Post on 02-Oct-2020
TUGAS AKHIR
SISTEM PENGGERAK JARI-JARI TANGAN ROBOT
DENGAN KONTROL SARUNG TANGAN NIRKABEL
Diajukan untuk memenuhi salah satu syarat
memperoleh gelar Sarjana Teknik pada
Program Studi Teknik Elektro
Jurusan Teknik Elektro
Fakultas Sains dan Teknologi Universitas Sanata Dharma
Disusun oleh :
GERARDO HARSEL
NIM : 155114002
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2019
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
FINAL PROJECT
ROBOTIC FINGERS WITH WIRELESS GLOVE
CONTROL
In a partial fulfilment of therequirements
for the degree of Sarjana Teknik
Departement of Electrical Engineering
Faculty of Science and Technology, Sanata Dharma University
GERARDO HARSEL
NIM : 155114002
ELECTRICAL ENGINEERING STUDY PROGRAM
DEPARTMENT OF ELECTRICAL ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2019
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
HALAMAN PERSEMBAHAN
MOTTO :
“If You Can’t Stop Thinking About It … Do it !”
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
INTISARI
Belakangan ini robot sudah banyak berkembang, mulai dari robot yang
menggunakan roda hingga berkaki. Bahkan dahulu gerak robot bisa di katakan masih
terbatas dan masih banyak robot yang belum dapat dikendalikan secara nirkabel tetapi saat
ini robot dapat bergerak ke segala arah dan sudah banyak robot yang dikembangkan menjadi
robot yang dapat di kendaliakan secara nirkabel.
Teknologi wireless merupakan teknologi yang menarik dalam perancangan robot jari
tangan ini. Robot jari tangan merupakan sebuah robot berbentuk tangan menusia, dimana
memiliki lima jari yang menyerupai dan fungsi dari jari tangan manusia.sensor flex
merupakan sensor yang berbentuk kawat lentur yang apabila ditekuk akan memunculkan
perubahan resistansi, perubahan resistansi yang menghasilkan tegangan yang bervariasi
yang akan diolah menjadi sebuah perintah kemotor servo. Motor servo digunakan sebagai
penggerak robot jari tangan dari ibu jari, jari telunjuk, jari tengah, jari manis, dan jari
kelingking. Sedangkan pusat pengolahan data antara perintah sensor flex dengan motor servo
diolah oleh mikrokontroler arduino nano. Pengontrolan robot jari tangan ini akan dilakukan
secara wireless menggunakan modul nRF24L01.
Berdasarkan hasil penelitian, sensor flex dapat mengatur posisi sudut dari motor
servo dari 0° sampai 180° dengan posisi kelengkungan dari sensor flex, semakin melengkung
sensor flex maka sudut motor servo semakin menuju kearah 180°. Sensor flex sudah dapat
mengontrol gerakan motor servo pada prototipe tangan sehingga gerakan jari tangan
pengguna sudah dapat sesuai dengan gerakan prototipe robot jari tangan. Kedua
mikrokontroler arduino nano dapat berkomunikasi dengan baik hingga jarak 41 meter.
Kata kunci : Sensor flex, nRF24L01, robot jari tangan, sarung tangan, wireless
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
ABSTRACT
Lately, many robots have developed, ranging from robots that use wheels to legs.
Even the robot's motion can be said to be still limited and there are still many robots that
cannot be controlled wirelessly but now robots can move in all directions and many robots
have been developed into robots that can be controlled wirelessly.
Wireless technology is an interesting technology in the design of this finger robot.
The finger robot is a human shaped hand robot, which has five fingers that resemble and
function of a human finger. Flex sensor is a sensor in the form of a flexible wire which when
bent will bring up a change in resistance, a change in resistance that produces a varying
voltage which will be processed into a servo motor command. Servo motors are used as
robotic fingers from the thumb, index finger, middle finger, ring finger, and little finger. The
data processing center between the flex sensor command and the servo motor is processed
by the arduino nano. The controlling of this finger robot work wirelessly using the
nRF24L01 module.
Based on the results of the research, the flex sensor can adjust the angular position
of the servo motor from 0 ° to 180 ° with the curvature position of the flex sensor, more
curved the flex sensor the angular servo motor is heading towards 180 °. The flex sensor can
already control the movement of the servo motor on the prototype of the hand so that the
movement of the user's fingers can be in accordance with the movement of the prototype of
the finger robot. Both arduino nano microcontrollers can communicate well up to a distance
of 41 meters.
Keyword: flex sensor, nRF24L01, robotic fingers, glove, wireless
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
KATA PENGANTAR
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa atas berkat rahmat
kasih-Nya yang telah dilimpahkan-Nya sehingga penulis dapat menyelesaikan Tugas Akhir
yang berjudul Sistem Penggerak Jari-Jari Tangan Robot Dengan Kontrol Sarung Tangan
Nirkabel.
Tugas Akhir ini disusun sebagai salah satu syarat kelulusan untuk memperoleh gelar
Sarjana Teknik pada Program Studi Teknik Elektro, Fakultas Sains dan Teknologi,
Universitas Sanata Dharma Yogyakarta. Penulisan Tugas Akhir ini tidak lepas dari campur
tangan dan bantuan dari banyaknya pihak, baik secara langsung maupun tidak langsung.
Penulis menyadari bahwa banyak pihak yang telah memberi dukungan, semangat,
bimbingan dan arahan serta bantuan materil. Oleh karena itu, pada kesempatan ini penulis
ingin mengucapkan terima kasih kepada :
1. Tuhan Yesus Kristus yang selalu menyertai setiap langkahku.
2. Bapak Sudi Mungkasi, S.Si., M.Math.Sc.,Ph.D., selaku Dekan Fakultas Sains dan
Teknologi Universitas Sanata Dharma.
3. Bapak Petrus Setyo Prabowo, S.T., M.T., selaku Ketua Program Studi Teknik
Elektro, Fakultas Sains dan Teknologi, Universitas Sanata Dharma, serta selaku
dosen penguji tugas akhir.
4. Bapak Dr.Iswanjono, selaku Dosen Pembimbing Tugas Akhir yang selalu
memberikan masukan dan dorongan, kepada penulis untuk berkembang dan
berproses, selalu sabar dan meluangkan waktunya untuk bimbingan sehingga tugas
akhir dapat diselesaikan dengan hasil yang memuaskan.
5. Bapak Dr. Ir. Linggo Sumarno, M.T., selaku Dosen Pembimbing Akademik yang
selalu memberikan masukan dan dorongan, kepada penulis untuk berkembang dan
berproses selama berkuliah sehingga bisa sampai ditahap sekarang ini.
6. Bapak Djoko Untoro Suwarno,S.Si.,M.T., selaku dosen penguji tugas akhir yang
telah memberi masukan, bimbingan serta saran untuk menyempurnakan penulisan
tugas akhir ini.
7. Bapak Ir. Tjendro, M.Kom., selaku dosen penguji tugas akhir yang telah memberi
masukan, bimbingan serta saran untuk menyempurnakan penulisan tugas akhir ini.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
DAFTAR ISI
HALAMAN SAMPUL (BAHASA INDONESIA) ................................................................ i
HALAMAN SAMPUL (BAHASA INGGRIS) .................................................................... ii
HALAMAN PERSETUJUAN ............................................................................................. iii
HALAMAN PENGESAHAN .............................................................................................. iv
LEMBAR PERNYATAAN KEASLIAN KARYA .............................................................. v
HALAMAN PERSEMBAHAN ........................................................................................... vi
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK
KEPENTINGAN AKADEMIS ........................................................................................... vii
INTISARI ........................................................................................................................... viii
ABSTRACT ......................................................................................................................... ix
KATA PENGANTAR ........................................................................................................... x
DAFTAR ISI ....................................................................................................................... xii
DAFTAR GAMBAR .......................................................................................................... xiv
DAFTAR TABEL .............................................................................................................. xvi
BAB I PENDAHULUAN ................................................................................................. 1
1.1 Latar Belakang ........................................................................................................ 1
1.2 Tujuan dan Manfaat Penelitian ............................................................................... 2
1.3 Batasan Masalah ..................................................................................................... 2
1.4 Metodologi Penelitian ............................................................................................. 3
BAB II DASAR TEORI ..................................................................................................... 5
2.1 Mikrokontroler ........................................................................................................ 5
2.1.1. Arduino Nano .............................................................................................................. 5
2.1.2. Konfigurasi Pin Arduino Nano .................................................................................... 6
2.1.3. Perangkat Lunak Arduino ............................................................................................ 7
2.2 Sensor Flex ............................................................................................................. 8
2.3 Modul nRF24L01 ................................................................................................. 11
2.4 Motor Servo .......................................................................................................... 15
2.4.1. Pengendalian Motor Servo ........................................................................................ 16
2.5 PWM (Pulse Width Modulation) .......................................................................... 17
2.6 Serial Peripheral Interface ( SPI ) ......................................................................... 18
BAB III PERANCANGAN PENELITIAN ...................................................................... 22
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
3.1 Diagram Blok ........................................................................................................ 22
3.2 Perancangan Perangkat Keras ............................................................................... 23
3.2.1. Perancangan Prototipe Tangan Robot ....................................................................... 23
3.2.2. Perancangan Sarung Tangan ..................................................................................... 24
3.2.3. Gerakan Tangan ......................................................................................................... 25
3.2.4. Perancangan Sensor Flex ........................................................................................... 26
3.2.5. Perancangan Rangkaian Servo .................................................................................. 29
3.2.6. Perancangan Rangkaian Modul nRF24L01 ............................................................... 30
3.3 Perancangan Perangkat Lunak .............................................................................. 31
BAB IV HASIL DAN PEMBAHASAN ........................................................................... 33
4.1 Sistem Perangkat Keras ........................................................................................ 33
4.1.1. Implementasi Alat ..................................................................................................... 33
4.1.2. Perubahan Rancangan Penggunaan Power Supply ................................................... 35
4.1.3. Perubahan Rancangan Letak Rangkaian Pada Prototipe Tangan .............................. 35
4.1.4. Rangkaian Sarung Tangan ......................................................................................... 36
4.1.5. Rangkaian Penggerak Robot Jari Tangan .................................................................. 37
4.2 Sistem Penggerak Motor Servo ............................................................................ 37
4.2.1. Pengujian Nilai ADC Sensor Flex Terhadap Nilai PWM Motor Servo ..................... 37
4.2.2. Pengujian Nilai Sudut Sensor Flex Terhadap Nilai Sudut Robot Jari Tangan .......... 42
4.2.3. Pengujian Terhadap Nilai Sudut Saat Menggenggam Objek .................................... 45
4.3 Sistem Komunikasi Nrf24l01 ............................................................................... 48
4.3.1. Pengujian Jarak Komunikasi Antar Mikrokontroler ................................................. 48
4.4 Sistem Perangkat Lunak ....................................................................................... 50
4.4.1. Program Pembaca Sensor Flex .................................................................................. 50
4.4.2. Sistem Pengiriman dan Penerimaan Data .................................................................. 51
BAB V KESIMPULAN DAN SARAN ........................................................................... 54
5.1 Kesimpulan ........................................................................................................... 54
5.2 Saran ..................................................................................................................... 54
DAFTAR PUSTAKA .......................................................................................................... 55
LAMPIRAN ........................................................................................................................ 68
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
DAFTAR GAMBAR
Gambar 1. 1 Blok Diagram ................................................................................................... 3
Gambar 2. 1. Arduino Nano .................................................................................................. 6
Gambar 2. 2. Tampilan IDE Arduino .................................................................................... 7
Gambar 2. 3. Rangkaian Pembagi Tegangan Sensor Flex .................................................... 9
Gambar 2. 4. Sensor Flex .................................................................................................... 11
Gambar 2. 5. Modul Wireless nRF24L01 ........................................................................... 11
Gambar 2. 6. channel modul nRF24L01 ............................................................................. 13
Gambar 2. 7.Operasi read SPI ............................................................................................. 13
Gambar 2. 8. Operasi write SPI ........................................................................................... 14
Gambar 2. 9. Contoh pengalamatan pipe pada MultiCeiver ............................................... 14
Gambar 2. 10. Bagian-Bagian Motor Servo ........................................................................ 16
Gambar 2. 11. Gerakan Motor Servo .................................................................................. 16
Gambar 2. 12. Sinyal PWM................................................................................................. 17
Gambar 2. 13. Sinyal PWM dan Persamaan Vout PWM .................................................... 17
Gambar 2. 14.Duty Cycle dan Resolusi PWM .................................................................... 18
Gambar 2. 15.Ilustrasi kerja protokol SPI ........................................................................... 19
Gambar 2. 16. Komunikasi master-slave pada SPI ............................................................. 20
Gambar 2. 17. Diagram pewaktuan pemindahan data dengan Clock Phase (CPHA) =0 .... 21
Gambar 2. 18. Diagram pewaktuan pemindahan data dengan Clock Phase (CPHA) =1 .... 21
Gambar 3. 1. Blok Diagram................................................................................................. 22
Gambar 3. 2. Ilustrasi Perancangan Prototipe Tangan Robot.............................................. 23
Gambar 3. 3 Ilustrasi Perancangan Prototipe Tangan Robot (Tampak Samping) .............. 24
Gambar 3. 4. Ilustrasi Perancangan Sarung Tangan ............................................................ 25
Gambar 3. 5. Posisi Jari-Jari Tangan Membuka .................................................................. 25
Gambar 3. 6. gerakan Jari- Jari Tangan Menggenggam Objek ........................................... 26
Gambar 3. 7. Rangkaian Skematik Sensor Flex Dengan Arduino Nano ............................. 27
Gambar 3. 8. Grafik nilai ADC terhadap sudut ................................................................... 28
Gambar 3. 9. Rangkaian Skematik Motor Servo Dengan Arduino Nano ........................... 29
Gambar 3. 10. Rangkaian Skematik Modul nRF24L01 Dengan Arduino Nano (Rx) ........ 30
Gambar 3. 11. Flowchart Program Pada Sensor Sarung Tangan ........................................ 31
Gambar 3. 12. Flowchart Program Pada Penggerak Robot Jari Tangan ............................. 32
Gambar 4. 1. Bentuk Fisik Bagian Prototipe Jari Tangan Robot Tampak Belakang .......... 34
Gambar 4. 2. Bentuk Fisik Bagian Prototipe Jari Tangan Robot Tampak Depan ............... 34
Gambar 4. 3. Bentuk Fisik Bagian Sarung Tangan ............................................................. 34
Gambar 4. 4. Power Supply 5V, 6A .................................................................................... 35
Gambar 4. 5. Rancangan Letak Rangakaian........................................................................ 36
Gambar 4. 6. Rangakaian Sarung Tangan ........................................................................... 36
Gambar 4. 7. Rangkaian Penggerak Robot Jari Tangan ...................................................... 37
Gambar 4. 8. Posisi Tangan Belum Menggenggam ............................................................ 45
Gambar 4. 9. Posisi Tangan Saat Menggenggam Objek 4,5 cm ......................................... 46
Gambar 4. 10. Posisi Tangan Saat Menggenggam Objek 5,5 cm ....................................... 47
Gambar 4. 11. Posisi Tangan Saat Menggenggam Objek 6,5 cm ....................................... 47
Gambar 4. 12. Program Pembaca Sensor Flex .................................................................... 50
Gambar 4. 13. Program Penginisialisasian Variabel ........................................................... 51
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
Gambar 4. 14. Deklarasi Alamat Node nRFf24L01 ............................................................ 52
Gambar 4. 15. Pengaturan nRF24L01 Sebagai Pengirim .................................................... 52
Gambar 4. 16. Pengaturan nRF24L01 Sebagai Penerima ................................................... 52
Gambar 4. 17. Program untuk Memasukan Data Sudut ke Dalam Paket Data .................. 53
Gambar 4. 18. Program Pengiriman Paket Data .................................................................. 53
Gambar 4. 19. Program Penerima Paket Data ..................................................................... 53
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvi
DAFTAR TABEL
Tabel 2. 1. Keterangan fungsi tombol pada Arduino ............................................................ 8
Tabel 2. 2. Pin-Pin Modul nRF24L01 ................................................................................. 12
Tabel 3. 1. Keterangan nama-nama Komponen .................................................................. 24
Tabel 3. 2. Tabel Pengukuran Nilai ADC Terhadap Posisi Sensor Flex Pada Jari ............. 28
Tabel 3. 3. Tabel Konfigurasi Hubungan Pin Arduino Nano dengan Motor Servo ............ 29
Tabel 3. 4. Tabel Konfigurasi Hubungan Pin Arduino Nano (Rx) dengan Modul nRF24L01
............................................................................................................................................. 30
Tabel 4. 1. Data Hasil Pengujian Nilai ADC Terhadap Nilai PWM Motor Servo Ibu Jari .............. 38
Tabel 4. 2. Data Hasil Pengujian Nilai ADC Terhadap Nilai PWM Motor Servo Jari Telunjuk ..... 39
Tabel 4. 3. Data Hasil Pengujian Nilai ADC Terhadap Nilai PWM Motor Servo Jari Tengah ....... 40
Tabel 4. 4. Data Hasil Pengujian Nilai ADC Terhadap Nilai PWM Motor Servo Jari manis ......... 40
Tabel 4. 5. Data Hasil Pengujian Nilai ADC Terhadap Nilai PWM Motor Servo Jari kelingking .. 41
Tabel 4. 6. Data Hasil Percobaan Nilai Sudut Ibu Jari ..................................................................... 43
Tabel 4. 7. Data Hasil Percobaan Nilai Sudut Jari Telunjuk ............................................................ 43
Tabel 4. 8. Data Hasil Percobaan Nilai Sudut Jari Tengah .............................................................. 43
Tabel 4. 9. Data Hasil Percobaan Nilai Sudut Jari Manis ................................................................ 44
Tabel 4. 10. Data Hasil Percobaan Nilai Sudut Jari Kelingking ...................................................... 44
Tabel 4. 11. Sudut Motor Servo Saat Tidak Menggenggam ............................................................ 45
Tabel 4. 12. Sudut Motor Servo Saat Menggenggam Objek diameter 4,5 cm ................................. 46
Tabel 4. 13. Sudut Motor Servo Saat Menggenggam Objek diameter 5,5 cm ................................. 46
Tabel 4. 14. Sudut Motor Servo Saat Menggenggam Objek diameter 6,5 cm ................................. 47
Tabel 4. 15. Data Hasil Pengujian Kedua Jarak Komunikasi Antar Mikrokontroler ....................... 49
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Belakangan ini banyak robot yang diciptakan dengan tujuan membantu kerja
manusia hingga dapat meringankan pekerjaan manusia. Robot tersebut dapat digunakan
untuk perkerjaan ringan maupun berat hingga yang berbahaya. Robot-robot tersebut di
lengkapi dengan sensor-sensor dan kecerdasan buatan sehingga robot tersebut dapat di
gunakan susuai dengan apa yang di inginkan.
Jenis robot saat ini sudah banyak berkembang, mulai dari robot yang menggunakan
roda hingga berkaki. Bahkan dahulu gerak robot bisa di katakan masih terbatas dan masih
banyak robot yang belum dapat dikendalikan secara nirkabel tetapi saat ini robot dapat
bergerak ke segala arah dan sudah banyak robot yang dikembangkan menjadi robot yang
dapat di kendaliakan secara nirkabel.
Sebelumnya sudah ada penelitian yang dibuat oleh Heru Andra Padillah dan Arif
Gunawan yang berjudul “Kontrol Wireless Bionik Robot Jari Tangan Menggunakan
Arduino”[1]. Penelitian yang dilakukan oleh Heru Andra Padillah dan Arif Gunawan,
Pengontrolan bionic robot jari tangan dilakukan secara wireless menggunakan modul KYL
500L, dimana modul KYL 500L berperan sebagai pemancar dan penerima agar perangkat
pengontrol dapat berkomunikasi secara wireless dengan perangkat yang akan di
kontrol. Flex Sensor merupakan sensor yang berbentuk kawat lentur apabila di tekuk akan
memunculkan perubahan resistansi, perubahan resistensi yang menghasilkan tegangan yang
bervariasi yang akan di olah menjadi sebuah perintah ke motor servo. Motor servo adalah
motor dc yang mampu bekerja dua arah. Dimana arah pergerakan motornya dapat diatur
sesuai keinginan dan kebutuhan pengguna. Pada penelitian Heru Andra Padillah dan Arif
Gunawan, bionik robot jari tangan ini memanfaatkan motor servo sebagai penggerak jari
dari setiap jari
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
tangan robot. Sedangkan sebagai pusat pengolahan data antara perintah flex Sensor dengan
motor servo diolah oleh mikrokontroler arduino uno.
Berdasarkan referensi di atas, maka pada tugas akhir ini akan dibuat ulang prototipe
jari-jari robot tangan. Yang membedakan dengan penelitian Heru Andra Padillah dan Arif
Gunawan adalah modul wireless dan mikrokontroler yang digunakan pada penelitian adalah
modul nrf24l01 dan arduino nano. Ditugas akhir ini modul yang digunakan adalah nrf24l01
karena modul nrf24l01 dapat mengirim data secara kontinyu sehingga sinyal lebih stabil dan
memiliki dimensi yang lebih kecil dari pada modul KYL 500L sehingga mudah untuk
ditempatkan di sarung tangan. Mikrokontroler arduino nano dipilih karena memiliki dimensi
yang lebih kecil daripada arduino nano sehingga dapat ditempatkan dengan mudah di
prototipe robot tangan.
1.2 Tujuan dan Manfaat Penelitian
Tujuan dari penelitian ini adalah membuat sistem kendali jari-jari robot tangan secara
nirkabel.
Manfaat dari penelitian ini adalah:
1. Sebagai sarana pembelajaran mengenai komunikasi wireless antara dua buah
mikrokontroler.
2. Sebagai sarana pembelajaran tentang robotika prototipe jari-jari tangan robot.
1.3 Batasan Masalah
Agar tugas akhir ini bisa sesuai pada tujuan dan untuk menghindari kompleksnya
permasalahan yang muncul, maka diperlukan adanya batasan-batasan masalah yang sesuai
dengan judul tugas akhir ini. Adapun batasan masalah adalah :
1. Menggunakan dua buah Arduino nano
2. Komunikasi wireless menggunakan dua buah modul nrf24l01
3. Menggunakan lima buah motor servo sebagai penggerak jari-jari
4. Menggunakan lima sensor flex yang befungsi sebagai pengontrol gerakan jari-
jari
5. Mampu berkomunikasi dengan baik dengan jarak kurang lebih dua meter
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
1.4 Metodologi Penelitian
Berdasarkan tujuan yang ingin dicapai maka metode-metode yang digunakan dalam
penyusunan tugas akhir ini adalah:
1. Studi literature dan referensi, yaitu dengan mempelajari dan membaca tentang
hal-hal yang berkaitan dengan mikrokontroler (Arduino), sensor flex dan
komunikasi wireless antar mikrokontroler (Arduino) yang digunakan dalam
perancangan tugas akhir ini.
2. Perancangan hardware dan software. Penentuan hardware dan perancangan
software bertujuan untuk menentukan komponen-komponen apa saja yang akan
digunakan dengan mempertimbangkan factor-faktor permasalahan dan kebutuhan
yang dihadapi.
Gambar 1. 1 Blok Diagram
Pembutan sistem hardware, meliputi pembuatan dan perencanaan tata letak
mikrokontroler (arduino), sensor flex, motor servo, modul nRF24L01 dan juga
perancangan bentuk prototipe tangan robot.
3. Pembuatan sistem software, proses ini bertujuan agar alat dapat bekerja sesuai
dengan yang diinginkan. Pembuatan software menggunakan bahasa pemrograman
arduino.
4. Proses pengujian dan pengambilan data. Pengambilan data dilakukan dengan
menguji semua sistem apakah telah sesuai dengan yang diinginkan, serta
mengambil data gerakan antara sarung tangan dan jari-jari robot apakah telah
sesuai, dan pengujian komunikasi antara mikrokontroler (arduino).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
5. Analisis dan penyimpulan hasil percobaan. Proses ini dilakukan untuk
menentukan apakah berhasil atau tidaknya percobaan yang telah dilakukan
dengan mempertimbangkan hasil apakah alat telah bekerja sesuai dengan yang
diinginkan, meliputi kesesuaian gerakan antara sarung tangan dan jari-jari tangan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
BAB II
DASAR TEORI
Bab ini menjelaskan tentang dasar-dasar teori dan informasi mengenai komponen-
komponen yang akan digunakan dalam pembuatan instrumen seperti Arduino, Sensor Flex
dan Modul nRF24L01 serta hal-hal yang berkaitan dengan instrumen.
2.1 Mikrokontroler
Mikrokontroler adalah salah satu dari bagian dasar dari suatu sistem komputer.
Meskipun mempunyai bentuk yang kecil dari suatu komputer pribadi dan komputer
mainframe, mikrokontroler dibangun dari elemen elemen yang sama.
Seperti komputer pada umumnya, mikrokontroler adalah alat yang bekerja
mengerjakan instruksi-instruksi yang diberikan kepadanya. Intinya adalah bagian terpenting
dari suatu sistem terkomputerisasi adalah program yang dibuat oleh seorang programmer.
Program bertugas memberikan instruksi kepada komputer untuk melakukan jalinan yang
Panjang dari aksi-aksi sederhana untuk melakukan tugas yang lebih kompleks yang
diinginkan oleh programmer[2].
Arduino adalah salah satu dari mikrokontroler. Arduino adalah sebuah platform
elektronik yang open source. Arduino yang akan digunakan dalam penelitian ini adalah
arduino Nano.
2.1.1. Arduino Nano
Arduino merupakan sebuah platform dari physical computing yang bersifat open
source. Arduino tidak hanya sekedar sebuah alat pengembangan, tetapi kombinasi dari
hardware, bahasa pemrograman dan Integrated Development Environment (IDE) yang
canggih. IDE adalah sebuah software yang sangat berperan untuk menulis program,
mengkompilasi menjadi kode biner dan meng-upload ke dalam memory mikrokontroler.
Arduino Nano adalah salah satu papan pengembangan mikrokontroler yang berukuran kecil,
lengkap dan mendukung penggunaan breadboard. Arduino Nano diciptakan dengan basis
mikrokontroler ATmega328 (untuk Arduino Nano versi 3.x) atau ATmega 168 (untuk
Arduino versi 2.x). Arduino Nano tidak menyertakan colokan DC berjenis Barrel Jack, dan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
dihubungkan ke komputer menggunakan port USB Mini-B. Arduino Nano dirancang dan
diproduksi oleh perusahaan Gravitech [3].
2.1.2. Konfigurasi Pin Arduino Nano[3]
Gambar 2. 1. Arduino Nano
Arduino Nano memiliki 30 pin. Berikut adalah konfigurasi pin Arduino Nano
berdasarkan gambar 2.1. yaitu:
1 Serial TX (1) adalah pin yang berfungsi sebagai pengirim TTL
data serial.
2 Serial RX (0) adalah pin yang berfungsi sebagai penerima TTL
data serial.
3 RESET merupakan jalur LOW, untuk menghidupkan ulang
mikrokontroler.
4 GND adalah pin ground untuk catu daya digital.
5-15 D2-D12 adalah pin digital.
16 D13 pin digital yang terhubung dengan LED, akan menyala jika
HIGH value.
17 3V3 keluaran sebesar 3,3 Volt.
18 AREF merupakan referensi tegangan untuk input analog.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
19-26 A0-A7 adalah pin analog yang setiap pin tersedia 1024 nilai yang
berbeda, dapat diukur/diatur dari 0-5V dan memungkinkan untuk
mengubah batas nilai tertinggi/terendah.
27 External Power Supply sebesar 5V.
28 RESET unutk menghidupkan ulang mikrokontroler.
29 GND adalah pin ground.
30 VIN merupakan pin yang berfungsi sebagai pin masukan catu daya
digital.
2.1.3. Perangkat Lunak Arduino
Area pemrograman Arduino dikenal dengan Integrated Development Environment
(IDE)[4]. Area pemrograman yang digunakan untuk menulis baris program dan
mengunggahnya kedalam board Arduino, disamping itu juga dibuat lebih mudah dan dapat
berjalan pada beberapa sistem operasi seperti windows, macintosh, dan Linux[5]. gambar
2.2. dan table 2.1
Gambar 2. 2. Tampilan IDE Arduino
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
Tabel 2. 1. Keterangan fungsi tombol pada Arduino[9]
No. Tombol Nama Fungsi
1 Verify Menguji apakah ada kesalahan pada
program atau sketch. Apabila sketch sudah
benar, maka sketch tersebut akan
dikompilasi. Kompilasi adalah proses
mengubah kode program ke dalam kode
mesin.
2 Upload Mengirim kode mesin hasil kompilasi ke
board Arduino
3 New Membuat sketch yang baru
4 Open Membuka sketch yang sudah ada
Save Menyimpan sketch
6
Serial
Monitor
Menampilkan data yang dikirim dan
diterima melalui komunikasi serial.
IDE Arduino membutuhkan beberapa pengaturan yang digunakan untuk
mendeteksi board Arduino yang sudah dihubungkan ke komputer. Beberapa pengaturan
tersebut adalah mengatur jenis board yang digunakan sesuai dengan board yang terpasang
dan mengatur jalur komunikasi dara melalui perintah serial port. Pengaturan tersebut
terdapat di pull down menu tools[6].
2.2 Sensor Flex
Flex Sensor adalah sensor lengkung yang fleksibel secara fisik sehingga dapat
mengikuti pergerakan jari manusia. Range resistansi sebuah Flex Sensor berkisar 10 KΩ –
40 KΩ .[7] Sensor flex berfungsi untuk mendeteksi kelengkungan pada sensor ketika
ditekan. Sensor flex memiliki prinsip kerja sama seperti potensiometer. Sensor flex memiliki
2 kaki pin, dengan bentuk fisik tipis memanjang dan lentur. Sensor ini memiliki output
berupa resistansi. Dua pin kaki tersebut, jika salah satu pin diberikan tegangan sebesar +5 V
maka pin yang lainnya sebagai output serta tegangan 0 Volt. Prinsip kerja sensor flex ini
mirip dengan variabel resistor. Sensor flex memberikan resistansi kepada mikrokontroler
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
melalui rangkaian pembagi tegangan. Output resistansi ini akan diberikan tegangan yang
nantinya akan dibaca oleh mikrokontroler.
Mikrokontroler mengkonversi data menggunakan ADC (analog to digital converter),
dimana data masukkannya didapat dari tegangan yang sudah terkena resistansi.
Rangkaiannya dapat dilihat pada gambar 2.3. [8] Rangkaian sensor flex menggunakan
rangkaian pembagi tegangan yang berfungsi untuk membagi tegangan arduino (5V) dengan
tegangan output sensor flex ke data (pin analog input arduino).
Gambar 2. 3. Rangkaian Pembagi Tegangan Sensor Flex
Persamaan Menghitung Tegangan Sensor Flex & Nilai ADC Sensor Flex :
V2 = Vcc x (𝑅𝑓𝑙𝑒𝑥
𝑅1+𝑅𝑓𝑙𝑒𝑥) ( 2. 1 )
Persamaan Menghitung Nilai ADC Sensor Flex :
Data ADC = 𝑉𝑖𝑛𝐴𝑛𝑎𝑙𝑜𝑔
5 𝑉𝑜𝑙𝑡 x 1024 ( 2. 2 )
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
Keterangan:
V2 = Nilai tegangan sensor flex (Volt)
Vin = Tegangan catu mikrokontroler (Volt)
Rflex = Nilai Resistansi sensor flex (Ω)
R1 = Nilai Resistansi pembagi tegangan (Ω)
VinAnalog = Nilai tegangan sensor flex (Volt)
5 Volt = Tegangan sumber atau Vcc
Perhitungan pada sensor flex mengacu pada persamaan pada Tabel 2.2 adalah sebagai
berikut:
Vcc = 5 Volt
R2= 10 K Ω
• Kondisi ketika sensor flex lurus, berdasarkan datasheet.
R1 = 10 KΩ (berdasarkan hambatan datar sensor flex pada datasheet)
V2 = 5 Volt x (10 K Ω
10 K Ω+10 K Ω)
V2 = 2,5 Volt
Hambatan sensor fleksibel ini berubah ketika bantalan logam berada diluar tekukan.
Spesifikasi:
• Cakupan suhu : -35ºC sampai +80ºC
• Toleransi hambatan : ±30%
• Cakupan hambatan tekukan : 60K Ohm
• Nilai power : 0,5 Watt dst. 1 Watt sampai batas maksimal
• Resistansi flat 10Kohm ± 30%
• Rentang lengkungan kontur antara 45 KOhm – 125 Kohm
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
Gambar 2. 4. Sensor Flex
2.3 Modul nRF24L01
Module Wireless nRF24L01 merupakan modul komunikasi jarak jauh yang
menggunakan frekuensi pita gelombang radio 2.4-2.5 GHz ISM (Industrial Scientific and
Medical). nRF24L01 memiliki kecepatan sampai 2Mbps dengan pilihan opsi date rate 250
Kbps, 1 Mbps, dan 2 Mbps. Transceiver terdiri dari synthesizer frekuensi terintegrasi,
kekuatan amplifier, osilator kristal, demodulator, modulator dan Enhanced ShockBurst ™
mesin protokol. Output daya, saluran frekuensi, dan setup protokol yang mudah diprogram
melalui antarmuka SPI. Konsumsi arus yang digunakan sangat rendah, hanya 9.0mA pada
daya output -6dBm dan 12.3mA dalam mode RX. Built-in Power Down dan mode standby
membuat penghematan daya dengan mudah realisasi [9].
Gambar 2. 5. Modul Wireless nRF24L01
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
Tabel 2. 2. Pin-Pin Modul nRF24L01
Nomor
Pin Nama Pin Singkatan Keterangan
1 Ground GND Koneksi system ke Ground
2 Power Vcc Daya modul menggunakan 3.3V
3 Chip Enable CE Digunakan untuk mengaktifkan
komunikasi SPI
4 Chip Select Not CSN
Untuk menjaga agar pulsa clock
tetap tinggi, karena jika rendah
akan menonaktifkan SPI
5 Serial Clock SCK Menyediakan pulsa clock dengan
komunikasi SPI
6 Master Out Slave In MOSI
Terhubung dengan pin MOSI
dari MCU, untuk menerima data
dari MCU
7 Master In Slave Out MISO
Terhubung ke MISO dari pin
MCU, berfungsi sebagai modul
pengirim data dari MCU
8 Interrupt IRQ Pin rendah aktif, digunakan saat
interupsi diperlukan
Ketika CSN diatur low, maka kondisi ini menandakan bahwa siap mengambil intruksi.
Setiap intruksi baru harus dimulai dengan transisi high ke low pada CSN. Pada paralel
intruksi SPI word diterapkan pada pin MOSI, Status register bergeser secara serial melalui
pin MISO. Perintah SPI untuk pemindahan data serial seperti berikut :
1. <Command word: MSBit to LSBit (one byte)>
2. <Data bytes: LSByte to MSByte, MSBit in each byte first>
Modul nRF24L01 dapat dikonfigurasikan dalam mode power down, standby, rx dan tx.
Ketika VDD mencapai tegangan 1.9V atau lebih modul akan masuk kedalam status daya
saat reset dan tetap berada dikondisi reset hingga memasuki mode power down.
Modul transceiver nRF24L01 dapat berkomunikasi lewat empat pin SPI. Parameter
seperti frekuensi channel sebanyak 125 channel, dan data rate (250kbps,1Mbps, dan
2Mbps) dapat dikonfigurasikan melalui SPI interface.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
Modul transceiver mentransmisikan dan menerima data pada frekuensi tertentu yang
disebut channel. Agar dua atau lebih modul dapat saling berkomunikasi, modul harus berada
pada saluran yang sama. Frekuensi yang dapat digunakan antara 2400 hingga 2525 MHz.
setiap channel memiliki bandwidth kurang dari 1MHz. Sehingga banyak channel yang
tersedia adalah 125 channel dengan jarak antar channel sebesar 1 MHz, jadi modul ini dapat
menggunakan 125 channel berbeda pada satu modul komunikasi.
Gambar 2. 6. channel modul nRF24L01
Proses writing dapat berakhir sebelum semua byte dalam register multi-byte telah
ditulis. Dalam hal ini MSByte yang tidak tertulis akan tetap tidak berubah. Misalnya LSByte
dari RX_ADDR_P0 dapat dimodifikasi dengan satu byte ke regiter RX_ADDR_P0. Isi dari
status regiter akan selalu terbaca ke MISO setelah trasisi high ke low pada CSN.
Gambar 2. 7.Operasi read SPI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
Gambar 2. 8. Operasi write SPI
Keterangan :
Cn : SPI instruksi bit
Sn : Status register bit
Dn : Data bit (LSByte ke MSByte, MSBit disetiap byte pertama)
Operasi SPI pada gambar 2.7 dan 2.8. Modul harus berada dalam salah satu kondisi
standby mode atau power down sebelum melakukan proses penulisan ke konfigurasi register.
Gambar 2. 9. Contoh pengalamatan pipe pada MultiCeiver
Fitur Multiceiver merupakan fitur yang digunakan dalam mode tx dan rx yang berisi
serangkaian enam pipe data paralel dengan masing-masing alamat berbeda. Pipe data adalah
logical channel dalam channel fisik RF. Setiap pipe data memiliki alamat yang berbeda.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
Modul yang dikonfigurasikan sebagai PRX (primary receiver) dapat menerima data yang
ditujukan keenam pipe data yang berada dalam satu channel frekuensi.
Gambar diatas menunjukan node pusat, PRX ditugaskan untuk dilewati data pipe rx
yang sudah dialamatkan, ( ada juga alamat tx yang ditugaskan ke pusat node. Alamat rx dan
tx ditugaskan untuk mengantarkan data pada pipe ke pusat node. Alamat rx dan tx yang
ditugaskan ke pusat node sebagai berikut :
1. Addr Data Pipe 0 (PRX_ADDR_P0): 0x7878787878
2. Addr Data Pipe 1 (PRX_ADDR_P1): 0xB3B4B5B6F1
3. Addr Data Pipe 2 (PRX_ADDR_P2): 0xB3B4B5B6CD
4. Addr Data Pipe 3 (PRX_ADDR_P3): 0xB3B4B5B6A3
5. Addr Data Pipe 4 (PRX_ADDR_P4): 0xB3B4B5B60F
6. Addr Data Pipe 5 (PRX_ADDR_P5): 0xB3B4B5B605
2.4 Motor Servo
Motor servo adalah sebuah motor dengan sistem closed feedback dimana posisi dari
motor akan diinformasikan kembali ke rangkaian kontrol yang ada di dalam motor servo.
Motor terdiri dari sebuah motor, serangkaian gear, potentiometer dan rangkaian kontrol.
Potentiometer berfungsi untuk menentukan batas sudut dari putaran servo. Sedangkan sudut
dari sumbu motor servo diatur berdasarkan lebar pulsa yang dikirim melalui kaki sinyal
kabel motor[11].
Motor servo biasanya hanya bergerak mencapai sudut tertentu saja dan tidak
kontinyu seperti motor DC maupun motor stepper. Walau demikian, untuk beberapa
keperluan tertentu, motor servo dapat dimodifikasi agar bergerak kontinyu. Pada robot,
motor ini sering digunakan untuk bagian kaki, lengan atau bagian-bagian lain yang
mempunyai gerakan terbatas. Motor servo adalah motor yang mampu bekerja dua arah,
yaitu searah jarum jam atau clockwise (CW) dan berlawanan arah jarum jam atau
counterclockwise (CCW) dimana arah dan sudut pergerakan rotornya dapat dikendalikan
hanya dengan memberikan pengaturan duty cycle sinyal Pulse Width Modulation (PWM)
pada bagian pin kontrolnya. Motor servo merupakan sebuah motor DC yang memiliki
rangkaian kontrol elektronik dan internal gear untuk mengendalikan pergerakan dan sudut
angularnya.
Sistem mekanis pada motor servo seperti yang ditunjukkan pada gambar 2.6 terdiri
dari:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
a. 3 jalur kabel: power, ground, dan control.
b. Internal gear.
c. Potentiometer.
d. Feedback control.
Gambar 2. 10. Bagian-Bagian Motor Servo
2.4.1. Pengendalian Motor Servo
Kabel kontrol digunakan untuk mengatur sudut posisi dari batang output. Sudut
posisi ditentukan oleh durasi pulsa yang diberikan oleh kabel kontrol. Motor sevo
digerakkan dengan menggunakan PWM (Pulse Width Modulation). Motor sevo akan
mengecek pulsa setiap 20 milisecond. Panjang pulsa akan menentukan seberapa jauh motor
akan berputar. Contohnya, pada pulsa 1,5 milisecond akan membuat motor berputar sejauh
90° (lebih sering disebut posisi netral). Jika pulsa lebih pendek dari 1,5 milisecond, maka
motor akan berputar lebih dekat ke 0°. Jika lebih panjang dari 1,5ms, maka akan berputar
mendekati 180°.[11] Dari Gambar 2.7 dibawah, durasi pulsa menentukan sudut dari batang
output.
Gambar 2. 11. Gerakan Motor Servo
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
2.5 PWM (Pulse Width Modulation)
PWM (Pulse Width Modulation) adalah sebuah cara memanipulasi lebar sinyal yang
dinyatakan dengan pulsa dalam suatu perioda, untuk mendapatkan tegangan rata-rata yang
berbeda. Beberapa contoh aplikasi PWM, yaitu pemodulasi data untuk telekomunikasi,
pengontrolan daya atau tegangan yang masuk ke beban, regulator tegangan, audio effect dan
penguat, serta aplikasi-aplikasi lainnya. Aplikasi PWM berbasis mikrokontroler biasanya
untuk pengendalian kecepatan motor DC, pengendalian motor servo dan pengaturan nyala
terang suatu LED.
Gambar 2. 12. Sinyal PWM
Sinyal PWM pada umumnya memiliki amplitude dan frekuensi dasar yang tetap, namun
memiliki lebar pulsa yang bervariasi. Lebar pulsa PWM berbanding lurus dengan amplitude
sinyal asli yang belum termodulasi. Artinya, sinyal PWM memiliki frekuensi gelombang
yang tetap namun duty cycle bervariasi (antara 0% hingga 100%).
Gambar 2. 13. Sinyal PWM dan Persamaan Vout PWM
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
PWM merupakan salah satu teknik untuk mendapatkan sinyal analog dari sebuah piranti
digital. Sebenarnya sinyal PWM dapat dibangkitkan dengan banyak cara, dapat
menggunakan metode analog dengan menggunakan rangkaian op-amp atau dengan
menggunakan metode digital. Dengan metode analog setiap perubahan PWM yang terjadi
sangat halus, sedangkan menggunakan metode digital, setiap perubahan PWM dipengaruhi
oleh resolusi dari PWM itu sendiri. Resolusi adalah jumlah variasi perubahan nilai dalam
PWM tersebut. Contoh, suatu PWM memiliki resolusi 8-bit yang berarti PWM ini memiliki
variasi 27 perubahan nilai sebanyak = 256 variasi, mulai 0-255 perubahan nilai yang
mewakili duty cycle 0-100% dari keluaran PWM tersebut.[12]
Gambar 2. 14.Duty Cycle dan Resolusi PWM
2.6 Serial Peripheral Interface ( SPI )
Dalam menggunakan SD Card Shield, ada satu library yang dideklarasikan selain
library ‘SD.h’ yang memang didedikasikan untuk menangani SD Card. Library selain SD.h
itu adalah library ‘SPI.h’. Library SPI.h adalah library yang khusus bertugas menangani
komunikasi serial sinkron SPI (Serial Peripheral Interface) di arduino. Serial sinkron adalah
protocol komunikasi data secara serial namun membutuhkan jalur clock untuk sinkronisasi
antara transmitter dan receiver. Sedangkan secara khusus istilah ‘serial sinkron SPI’
ditujukan untuk tipe protokol komunikasi serial sinkron yang memiliki 3 jalur kabel yakni
MISO (Master In Slave Out). MOSI (Master Out Slave In) dan SCLK (Serial Clock). MOSI
merupakan jalur pengiriman data dari master ke slave, sedangkan MISO merupakan
kebalikannya. Biasanya ada satu tambahan pin yang digunakan untuk
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
mengaktifkan/mematikan perangkat slave SPI yang dinamakan CS (Chip Select) atau SS
(Slave Select). Pin CS/SS bersifat spesifik untuk tiap perangkat slave yang menggunakan
komunikasi SPI sehingga bisa berbeda-beda untuk masing-masing perangkat. Ilustrasi cara
kerja protokol SPI ini ditujukan pada gambar 2.15.
Gambar 2. 15.Ilustrasi kerja protokol SPI
Dalam implementasinya, SPI banyak digunakan sebagai alternative untuk berkomunikasi
dengan perangkat lain misalnya EEPROM (SPI EEPROM), sensor (barometer, tekanan, dll)
komponen elektronika (SPI digital potensiometer) atau kontroler lain ( Arduino, AVR,
MCS51, ARM, dll). Komunikasi serial data antara master dan slave pada SPI diatur melalui
4 buah pin yang terdiri dari SCLK, MOSI, MISO, dan SS. Keempat pin tersebut dijelaskan
sebagai berikut :
1. Serial Clock (SCLK) merupakan data biner yang keluar dari master ke slave yang
berfungsi sebagai clock dengan frekuensi tertentu. Clock merupakan salah satu
komponen prosedur komunikasi data SPI. Dalam beberapa perangkat, istilah yang
digunakan untuk pin ini adalah SCK.
2. Master Output Slave Input (MOSI) merupakan pin yang berfungsi sebagai jalur data
pada saat data keluar dari master dan masuk kedalam slave. Istilah lain untuk pin ini
antara lain Slave Input Master Output (SIMO), Serial Data In (SDI), Data In (DI),
dan Serial In (SI)
3. Master Input Slave Output (MISO) merupakan pin yang berfungsi sebagai jalur data
Slave Output Master Input (SOMI), Serial Data Out (SDO), Data Out (DO), dan
Serial Out (SO).
4. Slave Select (SS) merupakan pin yang berfungsi untuk mengaktifkan slave sehingga
pengiriman data hanya dapat dilakukan jika slave dalam keadaan aktif (active low).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
Istilah lain untuk SS antara lain Chip Select (CS), nCS, nSS dan Slave Transmit
Enable (STE).
Pin SCLK, MOSI, dan SS merupakan pin dengan arah pengiriman data dari master ke slave.
Sebaliknya, MISO mempunyai arah komunikasi data dari slave ke master. Pengaturan
hubungan dari pin MISO dan MOSI harus sesuai dengan ketentuan. Ketentuan tersebut
adalah pin MISO pada master harus dihubungkan dengan pin MOSI pada slave, begitu
sebaliknya. Hal ini dilakukan untuk menghindari terjadinya kesalahan prosedur pada
pengiriman data. Istilah pin-pin SPI untuk berbagai perangkat mungkin saja mempunyai
istilah yang berbeda dengan istilah diatas tergantung pada produsen.
Gambar 2. 16. Komunikasi master-slave pada SPI
Komunikasi data SPI dimulai pada saat master mengirimkan clock melalui SCK dengan
frekuensi lebih kecil atau sama dengan frekuensi maksimum pada slave. Kemudian master
memberi logika low atau 0 pada SS untuk mengaktifkan slave sehingga pengiriman data
(berupa siklus clock) siap untuk dilakukan. Pada saat siklus clock terjadi transmisi data full
duplex terjadi dua keadaan sebagai berikut
1. Master mengirim sebuah bit pada jalur MOSI dan slave membacanya pada jalur yang
sama.
2. Slave mengirim sebuah bit pada jalur MISO dan master membacanya pada jalur yang
sama.
Transmisi dapat menghasilkan beberapa siklus clock. Jika tidak ada data yang dikirim lagi
maka master menghentikan clock tersebut dan menonaktifkan slave.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
Gambar 2. 17. Diagram pewaktuan pemindahan data dengan Clock Phase (CPHA) =0
Gambar 2. 18. Diagram pewaktuan pemindahan data dengan Clock Phase (CPHA) =1
Diagram pewaktuan (timing diagram) SPI dimulai pada saat SS diaktifkan (low). Pada
gambar 2.17 dan 2.18 menujukkan bahwa satu siklus clock terdiri dari 8 bit data. Saat SS
aktif, MISO/MOSI mulai mengirimkan data mulai dari Most Significant Bit (MSB) data
tersebut. Pada saat clock berubah maka proses pengiriman data dilanjutkan pada bit yang
lebih rendah. Proses tersebut berlangsung sampai pengiriman data selesai dengan
mengirimkan bit Least Significant Bit (LSB) dan siklus clock berakhir serta SS kembali
dinonaktifkan (high). Saat siklus clock berakhir, biasanya slave mengirimkan interrupt ke
master yang mengindikasikan bahwa pengiriman data telah selesai dan siap untuk
melakukan pengiriman data selanjutnya. Dalam diagram pewaktuan, clock mempunyai
beberapa mode pengaturan polaritas (Clock Polarity/CPOL) dan fase (Clock/CPHA).[13]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
BAB III
PERANCANGAN PENELITIAN
Bab ini menjelaskan tentang perancangan “Sistem Penggerak Jari-Jari Tangan Robot dengan
Kontrol Sarung Tangan Nirkabel” yang terdiri dari blok diagram dan perancangan perangkat
keras maupun perancangan perangkat lunak dari alat tersebut.
3.1 Diagram Blok
Gambar 3. 1. Blok Diagram
Bagian input yang dikendalikan oleh mikrokontroler arduino (Tx) adalah sensor flex
yang terdapat disarung tangan. Inputan data yang diambil dari sensor flex yang terdapat pada
sarung tangan diteruskan oleh mikrokontroler arduino (Tx) ke modul wireless nRF24L01
untuk dikirimkan ke modul wireless nRF24L01 yang berada pada prototipe tangan robot
untuk kemudian diterima oleh mikrokontroler arduino (Rx) dan diaplikasikan pada
keluarannya yaitu menggerakkan motor servo.
Bagian output yang dikendalikan oleh mikrokontroler arduino (Rx) adalah motor
servo yang berfungsi untuk menggerakkan jari-jari tangan robot. Diagram blok pada gambar
3.1 masih terbagi menjadi dua tahapan perancangan, yaitu perancangan perangkat keras dan
perancangan perangkat lunak. Perancangan perangkat keras berisi tentang perkiraan bentuk
serta ukuran dari alat yang akan dirancang, pemilihan komponen-komponen yang akan
digunakan disesuaikan dengan kebutuhan alat, dan pengkabelan. Perancangan perangkat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
lunak berisi tentang pengaturan program dari alat yang akan dibuat. Program dari alat yang
akan dibuat pertama-tama adalah dalam bentuk diagram alir (flowchart) yang bertujuan
untuk mempermudah pembuatan program karena diagram alir berisi tentang urutan-urutan
proses dari alat yang akan dirancang.
3.2 Perancangan Perangkat Keras
Dalam perancangan perangkat keras ini terdiri dari beberapa tahapan karena
perangkat keras terdiri dari dua bagian. Bagian yang pertama adalah pembuatan
perancangan prototipe tangan robot. Dan bagian kedua adalah perancangan pembuatan
model dan bagian sarung tangan.
3.2.1.Perancangan Prototipe Tangan Robot
Pada prototipe tangan robot terdapat motor servo yang berjumalah lima berfungsi
untuk menggerakkan jari. Selain itu terdapat arduino sebagai pusat pengolahan data
diprototipe tangan robot dan terdapat battery holder serta baterai. Dan terdapat modul
wireless nRF24L01.
Gambar 3. 2. Ilustrasi Perancangan Prototipe Tangan Robot
1
2 3 4
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
Tabel 3. 1. Keterangan nama-nama Komponen
Gambar 3. 3 Ilustrasi Perancangan Prototipe Tangan Robot (Tampak Samping)
3.2.2. Perancangan Sarung Tangan
Pada bagian ini sarung tangan terdapat beberapa koponen meliputi sensor flex, modul
komunikasi nRF24L01 dan arduino nano. Ukuran sarung tangan dari ujung jari tengah
sampai pergelangan tangan adalah 19 cm sedangkan lebar sarung tangan adalah 10 cm.
Rencana alat pada bagian sarung tangan dapat dilihat pada gambar 3.4.
No. nama keterangan
1 Motor servo Penggerak jari
2 Battery holder Sumber tegangan motor servo dan arduino
3 Arduino nano Pusat pengolahan data
4 Modul nRF24L01 Modul wireless
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
Gambar 3. 4. Ilustrasi Perancangan Sarung Tangan
3.2.3. Gerakan Tangan
Gerakan tangan yang dapat dilakukan oleh robot jari tangan adalah gerakan
membuka jari-jari tangan dan menggenggam objek, disini objek yang digunakan adalah
gelas. Gerakan ini akan diatur oleh sebuah servo yang telah diatur letak pemasangannya.
Gambar 3. 5. Posisi Jari-Jari Tangan Membuka
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
Gambar 3. 6. gerakan Jari- Jari Tangan Menggenggam Objek
3.2.4. Perancangan Sensor Flex
Rangkaian sensor flex memiliki dua kaki. Salah satu kaki pin diberikan tegangan +5
Volt, sedangkan kaki pin lainnya terhubung pada output data yang dapat dihubungkan ke
salah satu pin A0, A1, A2, A3, A4 maupun A5, resistor 10KΩ, serta tegangan 0 Volt. Sensor
flex memberikan resistansi kepada mikrkontroler melalui rangkaian pembagi tegangan.
Tegangan keluaran arduino yang digunakan sebesar 5 V akan melewati rangkaian
pembagi tegangan sehingga tegangan keluaran arduino akan dibagi menjadi tegangan output
yang sebanding dengan resistansi yang dihasilkan sensor flex. Fungsinya adalah untuk
membagi tegangan keluaran arduino dengan tegangan output sensor flex ke data (pin analog
input arduino). Tegangan output sensor flex ke data (pin analog input arduino) dapat
bervariasi dengan menggunakan prinsip pembagi tegangan yaitu besarnya resistansi sensor
flex yang terukur dibagi dengan resistor pembagi tegangan yang dijumlahkan dengan
resistansi sensor flex yang terukur, lalu dikalikan tegangan keluaran arduino sebesar 5 Volt.
Pembagi tegangan adalah resistor 10 KΩ karena menyesuaikan dengan hambatan
datar sensor flex yang tertera di datasheet yang terdapat pada bagian lampiran. Sensor flex
memiliki dua kaki pin yaitu resistor pembagi tegangan yang terhubung dengan data masukan
pin analog arduino dan diberikan tegangan vcc, sedangkan kaki pin yang lain sebagai
tegangan output yang terhubung dengan ground. Rangkaian sensor flex dihubungkan dengan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
kabel yang akan di hubungkan pada pin analog arduino uno, ground dan vcc. Mikrokontroler
mengkonversi data menggunakan ADC, dimana data masukannya didapat dari tegangan
yang sudah terkena resistansi.
Gambar 3. 7. Rangkaian Skematik Sensor Flex Dengan Arduino Nano
Pada Gambar 3.7. adalah konfigurasi rangkaian untuk sensor flex pada
mikrokontroler Tx (Arduino Nano). Keluaran sensor flex akan masuk melalui pin A0 pada
mikrokontoler. Pengujian sensor flex dilakukan dengan cara menekuk sensor agar
menghasilkan nilai output. Nilai output yang dihasilkan dari proses menekuk sensor flex
tersebut adalah nilai analog yang kemudian akan diubah menjadi nilai ADC.
Saat dilakukan percobaan, didapatkan nilai ADC dari sensor flex yang
diperlihatkan pada Tabel 3.2.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
Tabel 3. 2. Tabel Pengukuran Nilai ADC Terhadap Posisi Sensor Flex Pada Jari
sudut Nilai adc Tegangan
Sensor
Rflex
0° 610 2.978 V 14.691,35 Ω
10° 625 3.051 V 15.641,02 Ω
30° 634 3.095 V 16.246,71 Ω
50° 643 3.139 V 16.809,65 Ω
70° 652 3.183 V 17.472,52 Ω
90° 660 3.222 V 18.089,88 Ω
110° 669 3.266 V 18.818,44 Ω
130° 678 3.310 V 19.585,79 Ω
150° 687 3.354 V 20.303,03 Ω
170° 696 3.398 V 21.152,64 Ω
180° 720 3.515 V 23.670,03 Ω
Gambar 3. 8. Grafik nilai ADC terhadap sudut
Nilai-nilai ADC yang didapatkan dari hasil percobaan diatas akan digunakan sebagai
nilai pembanding dengan nilai PWM pada putaran motor agar diperoeh kesesuaian gerakan
sensor flex dan kecepatan putaran motor. Apabila sensor flex dalam keadaan datar dan tidak
ditekuk maka memiliki nilai ADC ±610 yang berarti motor dalam kedaan diam atau tidak
berputar. Apabila sensor flex dalam keadaan agak ditekuk dan memiliki nilai ADC ±660
maka motor akan berputar dengan kecepatan yang tidak terlalu kencang. Dan apabila sensor
flex dalam keadaan ditekuk dan memiliki nilai ADC ±720 maka motor akan berputar dengan
kecepatan maksimal.
0
20
40
60
80
100
120
140
160
180
200
610 625 634 643 652 660 669 678 687 696 720
sud
ut
Nilai ADC
Nilai ADC terhadap sudut
Nilai ADC terhadap sudut
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
3.2.5. Perancangan Rangkaian Servo
Motor servo pada perancangan ini digunakan sebagai keluaran dari sensor flex.
Perputaran servo 1, servo 2, servo 3, servo 4 dan servo 5 akan diatur sesuai dengan gerakan
dari sensor flex. Setiap motor servo dihubungkan ke arduino Nano yang konfigurasi pinnya
sesuai dengan Tabel 3.3 dibawah.
Gambar 3. 9. Rangkaian Skematik Motor Servo Dengan Arduino Nano
Tabel 3. 3. Tabel Konfigurasi Hubungan Pin Arduino Nano dengan Motor Servo
No. Pin Arduino Uno Pin Servo Motor
1. 5 Volt 5 Volt
2. GND GND
3. D3 Servo 1
4. D5 Servo 2
5. D6 Servo 3
6. D9 Servo 4
7. D10 Servo 5
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
3.2.6. Perancangan Rangkaian Modul nRF24L01
Modul nRF24L01 berfungsi sebagai modul komunikasi yang berfungsi untuk
mengirim dan menerima data dari mikrokontroler Tx ke mikrokontroler Rx. Modul
nRF24L01 ini terpasang di masing-masing arduino. konfigurasi pemasangan pin modul
nRF24L01 pada arduino nano dapat dilihat pada Tabel 3.8. Program pengiriman data dari
arduino tx dan arduino rx dapat dilihat di gambar 3.11.
Gambar 3. 10. Rangkaian Skematik Modul nRF24L01 Dengan Arduino Nano (Rx)
Tabel 3. 4. Tabel Konfigurasi Hubungan Pin Arduino Nano (Rx) dengan Modul nRF24L01
No. Pin Arduino Nano Pin Modul nRF24L01
1. 3,3 Volt VCC
2. GND GND
3. D7 CE
4. D8 CS
5. D13 SCK
6. D11 MOSI
7. D12 MISO
Program untuk pengiriman data dari modul nRF24L01 arduino tx ke modul
nRF24L01 arduino rx pada tahap ini nilai yang dikirim sensor flex berupa tegangan analog
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
kemudian diubah kedalam bentuk data digital. Kemudian data tersebut disampaikan ke
modul nRF24L01 untuk dikirim receiver. Pengelamatan dilakukan untuk mengenali modul
pengirim dan penerima, untuk modul pengirim diberi pengenal ‘N’,’O’,’D’,’E’,’A’ dan
untuk modul penerima diberi pengenal ‘N’,’O’,’D’,’E’,’G’. Kemudian data-data sensor
flex dibagi menjadi lima dengan nama flex0, flex1, flex2, flex3, flex4, untuk membedakan
alamat pengiriman data. Setelah data diambil maka data akan dikirim sebagai paket data ke
modul receiver.
3.3 Perancangan Perangkat Lunak
Tahap ini adalah tahap pemograman perangkat, dimana hal-hal yang dijelasakan
bagaimana flowchart atau diagram alir dari keseluruhan pengendali yang akan dibuat.
Gambar 3. 11. Flowchart Program Pada Sensor Sarung Tangan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
Gambar 3. 12. Flowchart Program Pada Penggerak Robot Jari Tangan
Pertama instrument akan menerima masukan dari nilai yang dikirim dari sensor flex
berupa tegangan analog kemudia diubah kedalam bentuk data digital. Data-data dari sensor
kemudian akan dikirimkan oleh mikrokontroler transmitter ke mikrokontroler receiver. Data
sensor flex yang dikirim berupa nilai ADC. Mikrokontroler receiver kemudian akan
menerima data dari mikrokontroler transmitter yang kemudian akan diproses oleh
mikrokontroler receiver. Kemudian terjadi proses perubahan data digital dan data di olah
sehingga menghasilkan keluaran data PWM yang kemudian di kirim ke motor servo dan di
eksekusi kedalam bentuk pergerakan robot jari tangan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
BAB IV
HASIL DAN PEMBAHASAN
Pada bab ini akan menjelaskan tentang implementasi perancangan penelitian dan
hasil uji coba alat beserta pembahasannya untuk mengetahui kesesuaian Gerakan antara
perancangan dengan penelitian. Hasil dan pembahasan meliputi data hasil uji alat dapat
menggenggam objek benda dengan diameter tertentu, hasil pengujian sensor flex terhadap
sudut motor servo, hasil uji prototipe tangan yang dapat mengikuti gerak tangan, dan data
hasil pengujian jarak komunikasi antara mikrokontroler.
4.1 Sistem Perangkat Keras
4.1.1. Implementasi Alat
Implementasi alat menunjukkan bentuk fisik dari prototipe jari tangan robot tampak
depan dan belakang. Prototipe jari tangan robot ini memiliki 3 ruas disetiap jari-jari tangan
robot ini. Panjang setiap ruas jari tangan robot adalah 3 cm. panjang keseluruhan tangan 39
cm dan tinggi penyangga 12 cm. Rangkaian yang berfungsi sebagai penerima berada di
belakang prototipe tangan yang terdiri dari arduino nano dan modul nRF24L01 serta adaptor
5 V dengan arus 5 A. Bagian depan tangan terdapat 5 buah motor servo yang berfungsi
menggerakkan jari-jari tangan robot dengan benang. Gambar 4.3 menunjukan bentuk fisik
dari bagian sarung tangan sebagai bagian pengirim intruksi pergerakan jari robot. Sarung
tangan terdiri atas 5 buah sensor flex yang berada pada jari-jari di sarung tangan tersebut
modul nRF24L01, arduino nano dan baterai. Sensor flex berfungsi mengatur sudut-sudut
pada motor servo yang berada di prototipe jari tangan robot. Terdapat beberapa perubahan
pada letak robot jari tangan maupun sarung tangan. Pada Bab III dapat dilihat penempatan
komponen seperti arduino nano, motor servo, dan holder baterai terdapat pada bagian depan
robot jari tangan, saat implementasi alat ternyata penempatan kelima motor servo dibagian
depan membuat bagian depan penuh sehingga penempatan rangkaian penerima dipindahkan
pada bagian depan. Bagian sarung tangan ditambahkan rangkaian untuk menempatkan
arduino nano, modul nRF24l01 dan saklar on/off. Gambar bentuk fisik prototipe robot jari
tangan dapat dilihat pada Gambar 4.1 dan gambar 4.2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
Gambar 4. 1. Bentuk Fisik Bagian Prototipe Jari Tangan Robot Tampak Belakang
Gambar 4. 2. Bentuk Fisik Bagian Prototipe Jari Tangan Robot Tampak Depan
Gambar 4. 3. Bentuk Fisik Bagian Sarung Tangan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
4.1.2. Perubahan Rancangan Penggunaan Power Supply
Pada Bab III telah dirancang sumber tegangan yang digunakan pada arduino nano
dan motor servo adalah dua buah baterai sebesar 3.7 V yang disusun seri. Rancangan tersebut
diubah menjadi menggunakan power supply 5V, 6A untuk menghindari kehabisan daya saat
mengambil data dan saat uji coba alat. Posisi power supply ini ditempatkan pada bagian
belakang robot jari tangan karena pada bagian depan robot jari tangan susah penuh
ditempatkan oleh kelima motor servo. Arus sebesar 6 A pilih agar mampu menggerakan
kelima motor servo dengan baik, karena satu motor servo memerlukan arus sebesar 500mA
sampai 900mA saat bergerak sedangkan tegangan 5 V dipilih karena tegangan yang
diperlukan saat motor servo beroperasi adalah 4.8 V.
Gambar 4. 4. Power Supply 5V, 6A
4.1.3. Perubahan Rancangan Letak Rangkaian Pada Prototipe Tangan
Sebelumnya letak posisi dari motor servo, arduino nano dan modul nRF24L01 telah
dirancang pada bab III namun setelah diaplikasikan posisi penempatan dari kelima motor
servo sudah membuat penuh pada bagian depan dari prototipe tangan sehingga dibuat
rangkaian untuk meletakan arduino nano, modul nRF24L01, serta ditambahkan juga sakelar
on/off untuk menyalakan dan mematikan rangkaia. Rangkaian diletakkan pada bagian
belakang dari prototipe karena bagian depan tidak cukup untuk diletakkan rangkaian.
Power Supply
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
Gambar 4. 5. Rancangan Letak Rangakaian
4.1.4. Rangkaian Sarung Tangan
Pada rangkaian sarung tangan yang mengalami perubahan adalah dibuatnya
rangkaian untuk meletakkan arduino nano, modul nRF24L01, holder baterai dan
ditambahkan pula sakelar on/off untuk menyalakan dan mematikan rangkaian. Perubahan
dilakukan untuk mempermudah penempatan dari komponen-komponen. Modul nRF24L01
dipasang menggunakan jumper karena jika dipasang langsung pada rangkaian modul
nRF24L01 bertabrakan dengan arduino nano. Ukuran dari rangkaian pada sarung tangan
adalah 7,5 cm x7,5 cm (panjang x lebar).
Gambar 4. 6. Rangakaian Sarung Tangan
Motor Servo
Rangkaian mikrokontoler
penerima
nRF24L01
Baterai
Sakelar
on/off
Arduino
nano
Sensor
Flex
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
4.1.5. Rangkaian Penggerak Robot Jari Tangan
Rangakaian penggerak robot jari tangan terdiri dari arduino nano, modul nRF24L01, sakelar
on/off, lima buah servo, dan power supply 5V 6A. Power supply 5 volt mendapatkan
tegangan input dari 220 volt yang diubah oleh power supply menjadi tegangan output 5 volt.
Tegangan output ini kemudian digunakan sebagai sumber daya oleh arduino nano dan lima
buah motor servo.
Gambar 4. 7. Rangkaian Penggerak Robot Jari Tangan
4.2 Sistem Penggerak Motor Servo
Gerakan motor servo diatur oleh kelengkungan pada sensor flex. Posisi sudut motor
servo adalah dari 0° sampai 180°. Pada saat posisi sensor flex lurus motor servo akan bernilai
0° dan jika sensor flex semakin melengkung maka posisi sudut dari motor servo akan
semakin menuju ke 180°. Semakin besar sudut dari motor servo maka semakin besar juga
nilai ADC sensor flex begitu juga sebaliknya semakin kecil sudut motor servo maka semakin
kecil pula nilai ADC sensor flex.
4.2.1. Pengujian Nilai ADC Sensor Flex Terhadap Nilai PWM Motor
Servo
Pengujian nilai ADC sensor flex terhadap nilai PWM motor servo dilakukan dengan
melihat nilai ADC yang dikeluarkan sensor flex dengan sudut motor servo (PMW) pada serial
Arduino
Nano
Power
Supply nRF24L01
Sakelar
on/off
Kabel keluaran
ke motor servo
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
monitor. Pengujian dilakukan dari sudut motor servo bernilai 0° atau posisi awal dari jari
paad robot jari tangan sampai bernilai 180° atau posisi jari saat menekuk penuh. Nilai sudut
ini dapat dilihat pada serial monitor arduino. Setelah menentukan sudut-sudut yang akan
diambil datanya selanjutnya adalah melihat nilai ADC sensor flex yang muncul pada serial
monitor, contohnya pada saat mengambil nilai sudut motor servo bernilai 90° yang pertama
dilihat adalah sudut dari motor servo yang muncul pada serial monitor apakah sudah 90°
atau belum, untuk mendapatkan sudut yang diinginkan dilakukan dengan menekuk sensor
flex dengan perlahan hingga nilai pada serial monitor didapatkan nilai yang diinginkan,
setelah didapatkan sudut 90° selanjutnya adalah melihat nilai ADC yang keluar dari sensor
flex. Pengambilan data dilakukan pada kelima buah jari yaitu ibu jari, jari telunjuk, jari
tengah, jari manis dan jari kelingking. Masing-masing data sudut motor servo yang yang
diambil adalah dari 0° sampai 180° dengan jarak antar setiap sudut adalah 10°.
Tabel 4. 1. Data Hasil Pengujian Nilai ADC Terhadap Nilai PWM Motor Servo Ibu Jari
PWM (sudut motor servo) ADC (sensor flex)
0° 620
10° 625
20° 629
30° 634
40° 638
50° 643
60° 647
70° 652
80° 656
90° 660
100° 665
110° 669
120° 674
130° 678
140° 683
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
Tabel 4.1.(Lanjutan) Data Hasil Pengujian Nilai ADC Terhadap Nilai PWM Motor Servo
Ibu Jari
150° 687
160° 692
170° 696
180° 700
Tabel 4. 2. Data Hasil Pengujian Nilai ADC Terhadap Nilai PWM Motor Servo Jari
Telunjuk
PWM (sudut motor servo) ADC (sensor flex)
0° 590
10° 598
20° 606
30° 614
40° 621
50° 629
60° 637
70° 645
80° 653
90° 660
100° 668
110° 676
120° 684
130° 692
140° 699
150° 707
160° 715
170° 723
180° 730
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
Tabel 4. 3. Data Hasil Pengujian Nilai ADC Terhadap Nilai PWM Motor Servo Jari Tengah
PWM (sudut motor servo) ADC (sensor flex)
0° 675
10° 684
20° 693
30° 701
40° 710
50° 719
60° 727
70° 736
80° 744
90° 753
100° 762
110° 770
120° 779
130° 787
140° 796
150° 805
160° 813
170° 822
180° 830
Tabel 4. 4. Data Hasil Pengujian Nilai ADC Terhadap Nilai PWM Motor Servo Jari manis
PWM (sudut motor servo) ADC (sensor flex)
0° 590
10° 598
20° 606
30° 614
40° 622
50° 629
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
Tabel 4.4. (Lanjutan) Data Hasil Pengujian Nilai ADC Terhadap Nilai PWM Motor Servo
Jari manis
60° 637
70° 645
80° 653
90° 660
100° 668
110° 676
120° 684
130° 692
140° 699
150° 707
160° 715
170° 723
180° 730
Tabel 4. 5. Data Hasil Pengujian Nilai ADC Terhadap Nilai PWM Motor Servo Jari
kelingking
PWM (sudut motor servo) ADC (sensor flex)
0° 610
10° 618
20° 625
30° 632
40° 639
50° 646
60° 653
70° 660
80° 667
90° 674
100° 682
110° 689
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
Tabel 4.5. (Lanjutan) Data Hasil Pengujian Nilai ADC Terhadap Nilai PWM Motor Servo
Jari kelingking
120° 690
130° 703
140° 710
150° 717
160° 724
170° 731
180° 738
Pada Tabel di atas dapat dilihat nilai-nilai awal dan akhir sensor flex yang berada
disarung tangan, nilai ADC sensor flex ibu jari mulai dari 620-700 untuk sudut motor servo
dari 0-180. Nilai ADC sensor flex jari telujuk mulai dari 590-730 untuk sudut motor servo
dari 0-180. Nilai ADC sensor flex jari tengah mulai dari 575-830 untuk sudut motor servo
dari 0-180. Nilai ADC sensor flex jari manis mulai dari 590-730 untuk sudut motor servo
dari 0-180. Nilai ADC sensor flex jari kelingking mulai dari 610-738 untuk sudut motor servo
dari 0-180.
Dari hasil data yang diperoleh tersebut menunjukkan bahwa nilai ADC sensor flex
setiap jari memiliki nilai ADC yang berbeda-beda. Hal ini karena posisi lurus dan menekuk
pada setiap jari berbeda beda. Dan kesesuian gerakan antara gerakan sensor flex dengan
sudut motor servo sudah cukup sesuai.
4.2.2. Pengujian Nilai Sudut Sensor Flex Terhadap Nilai Sudut Robot
Jari Tangan
Pengujian nilai sudut sensor flex terhadap nilai sudut robot jari tangan dilakukan
dengan melihat kesesuian sudut sensor flex dengan sudut robot jari tangan. Pengujian
dilakukan dengan mengukur sudut pada sensor flex dan robot jari tangan dari posisi lurus
(awal) sampai posisi melengkung penuh menggunakan busur derajat. Pengambilan data
sudut pada sarung tangan dilakukan dengan menempatkan busur derajat pada jari-jari yang
akan diukur sudutnya, posisi busur derajat ditempatkan pada bagian tengah tangan sampai
ujung jari, setelah itu data sudut diambil dari posisi lurus sampai melengkung penuh. Nilai
sudut diambil dari nilai pada ujung jari terhadap busur derajat. Pengambilan data pada sudut
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
robot jari tangan dilakukan dengan menempatkan busur derajat pada jari-jari tangan robot
yang akan diambil data sudutnya, penempatan busur derajat ditempatkan pada posisi tengah
bagian robot jari tangan hingga ujung jari yang akan diukur sudutnya. Nilai sudut yang
diambil adalah nilai pada ujung jari terhadap busur derajat.
Tabel 4. 6. Data Hasil Percobaan Nilai Sudut Ibu Jari
Sudut Sensor flex Sudut Robot Jari Tangan
0° 33°
20° 60°
40° 82°
60° 95°
82° 120°
Tabel 4. 7. Data Hasil Percobaan Nilai Sudut Jari Telunjuk
Sudut Sensor flex Sudut Robot Jari Tangan
0° 32°
20° 43°
40° 65°
60° 81°
80° 95°
100° 122°
Tabel 4. 8. Data Hasil Percobaan Nilai Sudut Jari Tengah
Sudut Sensor flex Sudut Robot Jari Tangan
0° 32°
20° 53°
40° 81°
60° 101°
80° 110°
105° 121°
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
Tabel 4. 9. Data Hasil Percobaan Nilai Sudut Jari Manis
Sudut Sensor flex Sudut Robot Jari Tangan
0° 32°
20° 43°
40° 62°
60° 85°
80° 95°
103° 122°
Tabel 4. 10. Data Hasil Percobaan Nilai Sudut Jari Kelingking
Sudut Sensor flex Sudut Robot Jari Tangan
0° 32°
20° 41°
40° 65°
60° 82°
80° 100°
102° 122°
Data hasil percobaan di atas menunjukan nilai sudut sensor flex terhadap robot jari
tangan dari posisi awal (lurus) hingga menekuk penuh. Nilai awal sudut dari sensor flex
mulai dari 0° sedangkan nilai sudut saat menekuk penuh berbeda beda, nilai sudut saat
menekuk penuh pada ibu jari adalah 82°, jari telunjuk 100°, jari tengah 105, jari manis 103,
dan jari kelingking 102. Hal ini disebabkan karena posisi menekuk pada tangan berbeda-
beda, seperti ibu jari tidak dapat melengkung sama seperti jari telunjuk karena ibu jari
manusia hanya memiliki dua ruas jari sedangkan jari telunjuk memiliki 3 ruas jari. Nilai awal
sudut pada robot jari tangan juga berbeda-beda. Nilai awal sudut ibu jari adalah 33°,
sedangkan jari telunjuk , jari tengah, jari manis , dan jari kelingking adalah 32°. Nilai sudut
saat melengkung penuh juga berbeda-beda, nilai sudut ibu jari adalah 120° sedangakan jari
telunjuk, jari tengah, jari manis dan jari kelingking adalah 122°.
Dari hasil percobaan di atas dapat diketahui bahwa nilai sudut sensor flex dengan
robot jari tangan tidak dapat sama karena pada saat posisi awal disensor flex lurus sudut
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
45
bernilai 0° tetapi nilai awal pada robot jari tangan sedikit melengkung bernilai dari 32°-33°.
Posisi jari sedikit melengkung pada robot jari tangan berfungsi agar robot jari tangan dapat
menggenggam objek berdiameter kecil dengan baik.
4.2.3. Pengujian Terhadap Nilai Sudut Saat Menggenggam Objek
Pengujian menggenggam objek dilakukan dengan memberikan tiga buah objek
dengan ukuran diameter berbeda masing-masing 4,5 cm, 5,5cm dan 6,5 cm. Sudut setiap
motor servo pada prototipe bernilai 0° saat posisi tangan belum menggenggam. Objek
berukuran diameter 4,5 cm merupakan objek dengan diameter minimal yang dapat
digenggam oleh prototipe robot jari tangan, sedangkan objek dengan diameter 5,5 cm
merupakan objek dengan diameter sedang yang dapat digenggam dan objek terakir
berdiameter 6,5 cm merupakan objek dengan diameter maksimal yang dapat digenggam.
Tabel 4. 11. Sudut Motor Servo Saat Tidak Menggenggam
Jari Tangan Sudut Motor Servo ADC (sensor flex)
Ibu Jari 0° 620
Jari Telunjuk 0° 590
Jari Tengah 0° 675
Jari Manis 0° 590
Jari Kelingking 0° 610
Gambar 4. 8. Posisi Tangan Belum Menggenggam
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
Tabel 4. 12. Sudut Motor Servo Saat Menggenggam Objek diameter 4,5 cm
Jari Tangan Sudut Motor Servo ADC (sensor flex)
Ibu Jari 150° 687
Jari Telunjuk 180° 730
Jari Tengah 171° 822
Jari Manis 158° 714
Jari Kelingking 180° 738
Gambar 4. 9. Posisi Tangan Saat Menggenggam Objek 4,5 cm
Tabel 4. 13. Sudut Motor Servo Saat Menggenggam Objek diameter 5,5 cm
Jari Tangan Sudut Motor Servo ADC (sensor flex)
Ibu Jari 110° 669
Jari Telunjuk 136° 693
Jari Tengah 138° 788
Jari Manis 117° 678
Jari Kelingking 149° 715
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
Gambar 4. 10. Posisi Tangan Saat Menggenggam Objek 5,5 cm
Tabel 4. 14. Sudut Motor Servo Saat Menggenggam Objek diameter 6,5 cm
Jari Tangan Sudut Motor Servo ADC (sensor flex)
Ibu Jari 128° 675
Jari Telunjuk 124° 688
Jari Tengah 127° 783
Jari Manis 104° 679
Jari Kelingking 99° 680
Gambar 4. 11. Posisi Tangan Saat Menggenggam Objek 6,5 cm
Dari hasil pengujian nilai sudut saat menggenggam objek dapat diketahui nilai awal
setiap sudut motor servo saat tidak menggenggam adalah bernilai 0° sedangkan nilai
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
maksimal setiap sudut motor servo untuk menggenggam adalah 180°. Dari percobaan
pertama saat menggenggam objek berdiameter 4,5 cm dapat diketahui sudut motor servo ibu
jari bernilai 150°, jari telunjuk 180°, jari tengah 171°, jari manis 158°, dan jari kelingking
180°. Untuk percobaan menggenggam objek berdiameter 5,5 cm dapat diketahui sudut
motor servo ibu jari 110°, jari telunjuk136°, jari tengah 138°, jari manis 117°, jari kelingking
149°. dan untuk percobaan menggenggam objek berdiameter 6,5 cm nilai dari sudut motor
servo ibu jari 128°, jari telunjuk 124°, jari tengah 127°, jari manis 104, dan jari kelingking
99°. Dapat dilihat semakin besar diameter objek yang digenggam maka sudut motor servo
semakin kecil. Dan pada saat menggenggam objek sudut setiap motor servo tidak selalu
sama seperti saat menggenggam objek berdiameter 4,5 cm, sudut motor servo jari telunjuk
dengan jari tengah berbeda. Hal ini berfungsi agar objek yang digenggam dapat berdiri tegak.
Dari data hasil yang diperoleh pada tiga buah objek yang digenggam diatas dapat
dilihat prototipe robot jari tangan sudah dapat menggenggam ketiga objek dengan cukup
baik. Kekurangan dari robot jari tangan ini adalah tidak sepenuhnya dapat meniru gerakan
tangan karena dapat dilihat posisi tangan saat sudut motor servo bernilai 0° tidak dapat lurus
ini berfungsi untuk memaksimalkan gerakan menggenggam.
4.3 Sistem Komunikasi nRF24l01
Komunikasi antara mikrokontroler pengirim (Tx) dan mikrokontroler penerima (Rx)
diatur oleh dua buah modul nRF24L01. Masing-masing nRF24L01 berfungsi sebagai
pengirim dan penerima. Nrf24L01 pada bagian mikrokontroler pengirim berfungsi sebagai
master yang bertugas untuk mengirim data, dan nRF24L01 pada bagian mikrokontroler
penerima berfungsi sebagai slave yang bertugas untuk menerima data.
4.3.1. Pengujian Jarak Komunikasi Antar Mikrokontroler
Pengujian jarak komunikasi antar mikrokontroler dilakukan dengan melihat apakah
data-data dari mikrokontroller pengirim (Tx) masih dapat diterima oleh mikrokontroller
penerima (Rx). Pengujian dilakukan dengan menambah jarak antara mikrokontroller
pengirim (Tx) dengan mikrokontroller penerima (Rx) dari jarak 0 meter hingga jarak
mikrokontroller sudah tidak berkomunikasi lagi (terputus) atau data-data dari
mikrokontroller pengirim (Tx) sudah tidak dapat diterima lagi oleh mikrokontroller
penerima (Rx).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
Tabel 4. 15. Data Hasil Pengujian Kedua Jarak Komunikasi Antar Mikrokontroler
Jarak (Meter) Keterangan
1 Sarung tangan masih dapat menggerakan robot
jari tangan dengan baik
5 Sarung tangan masih dapat menggerakan robot
jari tangan dengan baik
10 Sarung tangan masih dapat menggerakan robot
jari tangan dengan baik
20 Sarung tangan masih dapat menggerakan robot
jari tangan dengan baik
30 Sarung tangan masih dapat menggerakan robot
jari tangan dengan baik
41 Sarung tangan masih dapat menggerakan robot
jari tangan dengan baik
42 Sarung tangan tidak dapat menggerakan robot
jari tangan
Pada Tabel 4.10. diperoleh data komunikasi antar 49rduino pada bagian pengirim
dan penerima. Pada jarak 1 meter hingga jarak 41 meter, bagian pengirim dan penerima
masih dapat berkomunikasi dengan baik, sarung tangan masih dapat menggerakan prototipe
robot jari tangan dengan baik. Namun ketika jarak 42 meter keatas, sudah bukan merupakan
jarak yang baik untuk komunikasi antara kedua mikrokontroler karena komunikasi antar
49rduino pada bagian pengirim dan penerima sudah tidak dapat bekerja, sarung tangan mulai
tidak dapat menggerakan prototipe robot jari tangan.
Dari data hasil pengujian kedua yang diperoleh tersebut, menunjukan bahwa data-
data oleh mikrokontroller pengirim (Tx) masih dapat dikirim dan diterima dengan baik oleh
mikrokontroller penerima (Rx) dalam jarak 0 meter hingga 41 meter. Dan pada jarak 42
meter keatas sudah bukan merupakan jarak yang baik untuk komunikasi antara kedua
mikrokontroller.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
4.4 Sistem Perangkat Lunak
4.4.1. Program Pembaca Sensor Flex
Program pembacaan sensor flex dijalankan dari pertama mikrokontroler pengirim
(Tx) dijalankan. Program melakukan pendeteksian kelengkungan sensor flex yang berada
pada sarung tangan yang kemudian di ubah menjadi sudut motor servo dari 0° sampai 180°.
Program dapat membaca nilai keluaran sensor flex sesuai dengan kelengkungan yang
dilakukan, semakin lengkung sensor flex maka nilai yang dibaca semakin besar dan nilai
keluaran pada motor servo juga semakin menuju ke 180°. Nilai sensor flex yang telah dibaca
kemudian dikonversikan menjadi nilai PWM motor servo.
Gambar 4. 12. Program Pembaca Sensor Flex
Setelah didapatkan nilai dari sensor flex, nilai tersebut kemudian dikonversikan
menjadi nilai sudut motor servo. Nilai sensor flex dibatasi dari saat sensor flex berada pada
posisi datar dan sensor flex berada pada keadaan ditekuk/melengkung penuh. Setiap sensor
flex pada sarung tangan memiliki variable sendiri yang memiliki batasan nilai berbeda-beda.
Variabel itu antara lain: sudut, sudut1, sudut2, sudut3, dan sudut4. Batasan nilai variabel
sudut mulai dari 620 sampai 700, sudut1 memiliki batasan nilai dari 590 sampai 730, sudut2
memiliki batasan nilai 675 sampai 830, sudut3 memiliki batasan nilai 590 sampai 730 dan
sudut4 memiliki batasan nilai mulai dari 610 sampai 738. Nilai-nilai sensor flex sedikit
berbeda dengan nilai yang telah dirancang pada Bab III, pada Bab III nilai sensor flex
dirancang dengan nilai rentang 610 sampai 810 dari posisi sensor flex datar sampai posisi
melengkung penuh. Hal ini disebabkan ketika sensor flex dipasang pada sarung tangan,
kondisi peletakan sensor flex mempengaruhi nilai yang terbaca karena pada posisi sensor
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
flex disarung tangan ada sensor flex yang posisi awalnya sudah sedikit melengkung karena
saat dipasang ditangan posisi tangan manusia memang sedikit melengkung sehinggga
didapat nilai awal dari variabel-variabel diatas dari 610 sampai 675 sedangkan nilai saat
melengkung penuh dari 700 sampai 830. Nilai tersebut yang kemudian dikonversi menjadi
nilai sudut motor servo.
4.4.2. Sistem Pengiriman dan Penerimaan Data
Pengiriman dan penerimaan data dilakukan ketika kedua buah mikrokontroler (Tx
dan Rx) telah menyala. Mikrokontroler pengirim (Tx) mulai mengirim data ketika
mikrokontroler penerima (Rx) telah menyala. Data yang dikirim berupa paket data, hal ini
disebabkan karena data akan tertukar-tukar ketika data tersebut diterima mikrokontroler
penerima (Rx) apabila data dikirim secara individual atau data dikirim satu-satu. Data-data
yang dikirim ada 5 buah yaitu, nilai sudut servo 1 untuk menggerakan ibu jari, nilai sudut
servo 2 untuk menggerakan jari telunjuk, nilai sudut servo 3 untuk menggerakan jari tengah,
nilai sudut servo 4 untuk menggerakan jari manis, dan nilai sudut servo 5 untuk menggerakan
jari kelingking.
Gambar 4. 13. Program Penginisialisasian Variabel
Agar mikrokontroler penerima (Rx) dapat menerima data dari mikrokontroler
pengirim (Tx), dilakukan proses pendeklarasian alamat pipe pada nRF24L01. Dalam
peneklarasian alamat pipe pada program mikrokontroler Tx dan Rx bisa menggunakan
karakter bebas agar dapat diingat dengan mudah, dalam program ini karakter yang digunakan
untuk mendeklarasikan alamat pipe nRF24L01 berjumlah 5 karakter, yang mana karakter
tersebut digunakan untuk membedakan alamat yang digunakan oleh nRFf24L01 pengirim
dan nRFf24L01 penerima. Program pendeklarasian alamat nRFf24L01 dapat di lihat pada
Gambar 4.14.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
Gambar 4. 14. Deklarasi Alamat Node nRFf24L01
Setelah alamat node nRF24L01 telah dideklarasi, alamat channel untuk nRF24L01
juga harus dideklarasikan. nRF24L01 memiliki 125 channel yang dapat digunakan, artinya
nRF24L01dapat berkomunikasi dengan 125 perangkat nRF24L01 lainnya. Channel yang
digunakan pada mikrokontroler pengirim(Tx) adalah channel 78, hal tersebut dapat dilihat
pada Gambar 4. 15.
Gambar 4. 15. Pengaturan nRF24L01 Sebagai Pengirim
Agar kedua nRF24L01 pada mikrokontroler Tx dan Rx dapat berkomunikasi,
channel yang digunakan juga harus sama, sehingga pada mikrokontroler penerima (Rx),
alamat channel yang digunakan juga adalah channel 78 seperti ditunjukkan pada Gambar
4.16.
Gambar 4. 16. Pengaturan nRF24L01 Sebagai Penerima
Data-data yang telah didapatkan berupa nilai sudut servo 1, nilai sudut servo 2, nilai
sudut servo 3, nilai sudut servo 4 dan nilai sudut servo 5 harus dimasukkan kedalam paket
data agar data yang dikirim hanya satu dan tidak terjadi pertukaran data atau data tertukar
pada proses pengiriman dan penerimaan data. Program memasukkan data-data tersebut
kedalam paket data dapat dilihat pada Gambar 4.17.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
Gambar 4. 17. Program untuk Memasukan Data Sudut ke Dalam Paket Data
Setelah data dimasukkan kedalam satu paket, data kemudian akan dikirim oleh
mikrokontroler pengirim (Tx). Dan Data akan diterima oleh mikrokontroler penerima (Rx).
Pengiriman data dan penerimaan data dapat dilihat pada Gambar 4.18 dan Gambar 4.19.
Gambar 4. 18. Program Pengiriman Paket Data
Gambar 4. 19. Program Penerima Paket Data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Berdasarkan pengujian yang telah dilakukan, didapatkan nilai-nilai keluaran sensor
flex, nilai tersebut kemudian diubah menjadi keluaran berupa gerakan motor motor servo.
Berdasarkan data-data pengujian yang telah dilakukan, dapat disimpulkan:
1. Alat yang telah dibuat dapat mengubah nilai sensor flex menjadi gerakan motor servo
berupa sudut, dan gerakan sudut dari motor servo yang dihasilkan sesuai dengan
gerakan yang telah dibuat pada sensor flex.
2. Alat yang dibuat dapat menggenggam objek dengan diameter 4,5 cm – 6,5 cm.
3. Data dapat dikirim dan diterima dengan baik pada jarak sampai 41 meter
5.2 Saran
Saran yang diberikan untuk pengembangan sistem ini adalah sebagai berikut:
1. Memaksimalkan penggunaan servo pada setiap ruas-ruas jari agar gerakan dapat
lebih baik dalam menirukan gerakan tangan manusia
2. Ditambahkannya gerakan lain yaitu untuk mengangkat objek.
3. Pendesainan dan peletakan alat dapat didesain dengan lebih baik.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
DAFTAR PUSTAKA
[1] Heru Andra Padillah, A. G. (2013). Kontrol Wireless Bionik Robot Jari Tangan
Menggunakan Arduino. Retrieved from
https://jurnal.pcr.ac.id/index.php/jae/article/view/435
[2] _____,2013, Konsep Mikrokontroler,
http://sistemkomputer.narotama.ac.id/2013/05/konsep-mikrokontroler-2/ , diakses
tanggal 19 april 2019.
[3] Senduk, S.W., 2018, Perancangan Artifical Finger Untuk Game Piano Tiles 2TM, Tugas
Akhir, Jurusan Teknik Elektro, FST, Universitas Sanata Dharma, Yogyakarta.
[4] _____,_____,Arduino Introduction, https://www.arduino.cc/en/Guide/Introduction ,
diakses 3 mei 2019.
[5] _____,_____,Arduino software, https://www.arduino.cc/en/main/software , diakses 3
mei 2019.
[6] KUSUMA, A. A. (2015). LENGAN ROBOT PENIRU GERAKAN MANUSIA.
repository.usd.ac.id.
[7] Muslimin, S., & Wijarnarko, Y., 2014, Penerapan Flex-Sensor Pada Lengan Robot
Berjari Pengikut Gerak Lengan Manusia Berbasis Mikrokontroler,
https://technologic.polman.astra.ac.id/index.php/firstjournal/article/view/39, diakses 25
Oktober 2018
[8] Nirwani, A.T., 2018, Simulator Kursi Roda Otomatis Dengan Sensor Flex Berbasis
Mikrokontroler, https://eprints.uny.ac.id/60223/1/Laporan_Affin_15507134002.pdf,
diakses 16 Desember 2019.
[9] Shobrina, dkk, 2018, Analisis Kinerja Pengiriman Dta Modul Transceiver NRF24l01,
Xbee Dan Wifi ESP8266 Pada Wireless Sensor Network,
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=10&ved=2ahUKE
wjAzNqC1ovfAhVbXSsKHQI_Ao8QFjAJegQIBRAC&url=http%3A%2F%2Fj-
ptiik.ub.ac.id%2Findex.php%2Fj-
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
56
ptiik%2Farticle%2Fdownload%2F1241%2F451%2F&usg=AOvVaw2YWMtcZ1DZk2Vlk
m1nxraZ, diakses 25 November 2019
[10] Pitowarno Endra, 2006, Desain, Kontrol, dan Kecerdasan Buatan, Andi Offset,
Yogyakarta.
[11] WIBOWO, WICAKSONO AJI,2017, ROBOTIKA BERBASIS VISI SEBAGAI
PENJEJAK DAN PENDETEKSI JARAK OBJEK DENGAN KAMERA CMUCAM 5,
http://repository.umy.ac.id/bitstream/handle/123456789/12432/BAB%202.pdf?sequence=7
&isAllowed=y,diakses 28 Juli 2019
[12] Wimpy, 2013, Jam Digital dengan Keluaran Suara, Jurusan Teknik Elekro, Universitas
Sanata Dharma, Yogyakarta
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-1
LAMPIRAN 1
LISTING PROGRAM BAGIAN PENGIRIM
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
int msg [5];
RF24 radio(7, 8);
const byte node1[5] = 'P','N','G','R','M'; //5 karakter untuk alamat modul pengirim
const byte node2[5] = 'P','N','R','M','A'; //5 karakter untuk alamat modul penerima
void setup()
Serial.begin(9600);
radio.begin();
radio.setPALevel(RF24_PA_MIN);
radio.openReadingPipe(1, node2); //membaca jalur pipe antara node 1 dan node 2
radio.startListening(); //nRF24L01 mulai bekerja
radio.setChannel(78); //mengatur modul agar bekerja dalam channel 78
void loop()
radio.openWritingPipe(node1);
radio.stopListening();
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-2
int flex = analogRead(A0);
int flex1 = analogRead(A1);
int flex2 = analogRead(A2);
int flex3 = analogRead(A3);
int flex4 = analogRead(A4);
int sudut = map(flex, 620, 700, 0, 180); //program mapping sensor flex 1
int sudut1 = map(flex1, 590, 730, 0, 180); // program mapping sensor flex 2
int sudut2 = map(flex2, 675, 830, 0, 180); // program mapping sensor flex 3
int sudut3 = map(flex3, 590, 730, 0, 180); // program mapping sensor flex 4
int sudut4 = map(flex4, 610, 738, 0, 180); // program mapping sensor flex 5
//-----------menampilkan nilai sensor flex dan sudut jari 1 -------------
// if(sudut>=0 && sudut<=255)
// Serial.print("Flex : ");
// Serial.println(flex);
// Serial.print("sudut : ");
// Serial.println(sudut);
//
// else
// int sudut = 0;
// Serial.print("Flex : ");
// Serial.println(flex);
// Serial.print("sudut : ");
// Serial.println(sudut);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-3
//
//---------menampilkan nilai sensor flex dan sudut jari 2--------------
// if(sudut1>=0 && sudut1<=255)
// Serial.print("Flex1 : ");
// Serial.println(flex1);
// Serial.print("sudut1 : ");
// Serial.println(sudut1);
//
// else
// int sudut1 = 0;
// Serial.print("Flex1 : ");
// Serial.println(flex1);
// Serial.print("sudut1 : ");
// Serial.println(sudut1);
//
//---------menampilkan nilai sensor flex dan sudut jari 3--------------
// if(sudut2>=0 && sudut2<=255)
// Serial.print("Flex2 : ");
// Serial.println(flex2);
// Serial.print("sudut2 : ");
// Serial.println(sudut2);
//
// else
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-4
// int sudut2 = 0;
// Serial.print("Flex2 : ");
// Serial.println(flex2);
// Serial.print("sudut2 : ");
// Serial.println(sudut2);
//
//---------menampilkan nilai sensor flex dan sudut jari 4--------------
// if(sudut3>=0 && sudut3<=255)
// Serial.print("Flex3 : ");
// Serial.println(flex3);
// Serial.print("sudut3 : ");
// Serial.println(sudut3);
//
// else
// int sudut3 = 0;
// Serial.print("Flex3 : ");
// Serial.println(flex3);
// Serial.print("sudut3 : ");
// Serial.println(sudut3);
//
//---------menampilkan nilai sensor flex dan sudut jari 5--------------
// if(sudut4>=0 && sudut4<=255)
// Serial.print("Flex4 : ");
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-5
// Serial.println(flex4);
// Serial.print("sudut4 : ");
// Serial.println(sudut4);
//
// else
// int sudut4 = 0;
// Serial.print("Flex4 : ");
// Serial.println(flex4);
// Serial.print("sudut4 : ");
// Serial.println(sudut4);
//
msg[0] = sudut; //menginisialisasi variabel data servo 1
msg[1] = sudut1; //menginisialisasi variabel data servo 2
msg[2] = sudut2; //menginisialisasi variabel data servo 3
msg[3] = sudut3; //menginisialisasi variabel data servo 4
msg[4] = sudut4; //menginisialisasi variabel data servo 5
radio.write(msg, sizeof(msg)); //paket data yang dikirim bernama msg
delay (100);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-6
LAMPIRAN 2
LISTING PROGRAM BAGIAN PENERIMA
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
#include <Servo.h>
RF24 radio(7, 8);
const byte node1[5] = 'P','N','G','R','M';
const byte node2[5] = 'P','N','R','M','A';
Servo myServo;
Servo myServo1;
Servo myServo2;
Servo myServo3;
Servo myServo4;
int msg[5];
void setup()
Serial.begin(9600);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-7
myServo.attach(3);
myServo1.attach(5);
myServo2.attach(6);
myServo3.attach(9);
myServo4.attach(10);
radio.begin();
radio.setPALevel(RF24_PA_MIN);
radio.openWritingPipe(node2); // NB these are swapped compared to the master
radio.openReadingPipe(1, node1); //membaca jalur pipe antara node 1 dan node 2
radio.startListening(); //modul mulai bekerja
radio.setChannel(78); //mengatur modul agar bekerja dalam channel 78
void loop()
if (radio.available())
radio.read(msg, sizeof(msg)); //Program untuk membaca paket yang telah dikirim
if( msg[0]>0)
myServo.write(msg[0]);
Serial.print("sudut : ");
Serial.println(msg[0]);//menampilkan nilai sudut jari 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-8
else
myServo.write(0);
if( msg[1]>0)
myServo1.write(msg[1]);
Serial.print("sudut1 : ");
Serial.println(msg[1]);//menampilkan nilai sudut jari 2
else
myServo1.write(0);
if( msg[2]>0)
myServo2.write(msg[2]);
Serial.print("sudut2 : ");
Serial.println(msg[2]);//menampilkan nilai sudut jari 3
else
myServo2.write(0);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-9
if( msg[3]>0)
myServo3.write(msg[3]);
Serial.print("sudut3 : ");
Serial.println(msg[3]);//menampilkan nilai sudut jari 4
else
myServo3.write(0);
if( msg[4]>0)
myServo4.write(msg[4]);
Serial.print("sudut4 : ");
Serial.println(msg[4]);//menampilkan nilai sudut jari 5
else
myServo4.write(0);
delay (100);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-10
LAMPIRAN 3
GERAKAN SARUNG TANGAN DAN GERAKAN TANGAN
Gambar L-1 Gerakan Sarung Tangan dan Gerakan Robot Jari Tangan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-11
LAMPIRAN 4
GERAKAN SETIAP JARI PADA SARUNG TANGAN DAN GERAKAN
ROBOT JARI
Gambar L-2 Gerakan Jari Pada Sarung Tangan dan Gerakan Robot Jari Tangan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI