View
4
Download
0
Category
Preview:
Citation preview
TUGAS AKHIR
KONTROL MODEL PESAWAT SEDERHANA
MENGGUNAKAN PEMBACAAN SENSOR PADA
SARUNG TANGAN
Diajukan untuk memenuhi salah satu syarat
memperoleh gelar Sarjana Teknik pada
Program Studi Teknik Elektro
Jurusan Teknik Elektro
Fakultas Sains dan Teknologi Universitas Sanata Sharma
Disusun oleh :
WAHYU PRAWISESA NUGROHO
NIM : 155114030
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2019
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
FINAL PROJECT
CONTROL FOR MODEL AIRCRAFT USING
SENSOR READING ON GLOVE
In a partial fulfilment of the requirements
for the degree of Sarjana Teknik
Departement of Electrical Engineering
Faculty of Science and Technology, Sanata Dharma University
WAHYU PRAWISESA NUGROHO
NIM : 155114030
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 :
“JANGAN ADA RENCANA B, KARNA JIKA ADA
RENCANA B, BERARTI ANDA SEPENUHNYA TIDAK
PERCAYA PADA RENCANA A”
Persembahan
Tugas Akhir ini kupersembahkan untuk
Tuhan Yang Maha Esa yang selalu memimpin setiap langkahku
Kedua orang tua, kakak, dan keluarga yang selalu mendoakan
yang terbaik
Dosen-dosen dan teman-teman yang sudah berdinamika bersama
selama masa perkuliahan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
INTISARI
Teknologi robot dibidang industri mainan berkembang cukup pesat. Banyak mainan
canggih yang dapat dikontrol melalui remote control. Teknologi remote control ini dapat
dikembangkan menjadi lebih variative dan lebih menarik dengan menggantikan remote
control menggunakan sarung tangan yang dapat menggerakan mainan-mainan tersebut.
Namun dalam penerapannya banyak yang harus diperhitungkan untuk membuat pesawat
kontrol yang dikontrol menggunakan sarung tangan, sehingga dibuatlah model pesawat yang
dapat dikontrol melalui sarung tangan. Model pesawat adalah tiruan fisik dari sebuah
pesawat, namun model pesawat tidak dapat terbang.
Penelitian ini bertujuan untuk membuat sarung tangan yang dapat mengontrol
pergerakan robot model pesawat secara wireless melalui arduino yang terhubung dengan
modul nrf24l01 yang terdapat pada sarung tangan dan model pesawat. Model pesawat
digerakan oleh beberapa servo yang membuatnya dapat bergerak naik, turun, miring kekanan
dan miring kekiri layaknya pesawat saat sedang terbang yang disesuaikan dengan kondisi
sensor MPU-6050 yang terdapat pada sarung tangan. Kecepatan putaran baling-baling pada
model pesawat diatur agar sesuai dengan kondisi sensor flex yang terdapat pada sarung
tangan.
Berdasarkan hasil penelitian, sensor flex dapat mengatur kecepatan putaran motor dc
berdasarkan kelengkungannya, semakin lengkung sensor flex maka semakin cepat putaran
motor dc. Sensor MPU-6050 dapat mengatur gerakan servo roll, pitch, dan yaw dengan baik,
namun masih terjadi error. Persentase total error dari gerakan servo roll adalah sebesar
1,73%, total error dari gerakan servo pitch adalah sebesar 9,34%, dan total error dari gerakan
servo yaw adalah sebesar 11,97%. Kedua arduino dapat berkomunikasi dengan baik hingga
jarak 5 meter.
Kata kunci: pesawat, sarung tangan, sensor MPU-6050, sensor flex, wireless
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
ABSTRACT
Robotics technology in the toy industry is growing rapidly. Many high technology
toys that can be controlled by remote control. This remote control technology can be
developed to be more varied and more interesting by replacing the remote control using
gloves that can move the toys. However, many things are needed to make a control airplane
using gloves, finally we made airplane model that can be controlled using gloves. The
airplane model is an imitation airplane model, but the airplane model cannot fly.
The purpose of this study is to create a gloves that can control the movement of
wireless airplane model with arduino that connected with nrf24l01 module in the gloves and
the airplane model. The aircraft model is moved by several servo which makes it able to
move up, down, tilt to the right and tilt to the left like an airplane that follows the MPU-6050
sensor on the glove. The rotation speed of the propeller on the model airplane rotates
following the flex sensor on the glove.
Based on the results of the study, the flex sensor can adjust the rotation speed of the
dc motor based on it’s curvature, if the flex sensor is increasingly curved then the dc motor
rotation is getting more faster. The MPU-6050 sensor can adjust servo roll, pitch and yaw
movements well, but errors still occur. The percentage of the total error from the servo roll
movement is 1,73%, the total error from the servo pitch movement is 9,34%, and the total
error from the servo yaw movement is 11,97%. Both Arduino can communicate well up to a
distance of 5 meters.
Keywords: airplane, gloves, MPU-6050 sensor, flex sensor, wireless
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
KATA PENGANTAR
Puji syukur kepada Tuhan Yang Maha Esa atas berkat dan penyertaan-Nya, sehingga
penulis dapat menyelesaikan pembuatan tugas akhir dan laporan tugas akhir ini dengan
lancar. Tujuan dari tugas akhir ini adalah sebagai salah satu syarat untuk mencapai derajat
sarjana Program Studi Teknik Elektro Fakultas Sains dan Teknologi Universitas Sanata
Dharma Yogyakarta. Pada kesempatan ini penulis ingin mengucapkan terima kasih kepada:
1. Tuhan Yang Maha Esa yang selalu setia mendampingi dan memberikan berkat, serta
penyertaan kepada penulis.
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.
4. Bapak Djoko Untoro Suwarno, S.Si., M.T., 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 Martanto, 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.
8. Bapak dan Ibu dosen yang mengajarkan banyak hal dan memberikan pengalaman
dalam proses pembelajaran selama penulis menempuh pendidikan di Program Studi
Teknik Elektro, Fakultas Sains dan Teknologi, Universitas Sanata Dharma.
9. Orang Tua dan kakak, dan seluruh keluarga yang memberikan semangat, dorongan
dan doa untuk dapat menyelesaikan tugas akhir ini.
10. Seluruh teman-teman yang sudah memberikan dukungannya selama penulisan tugas
akhir ini, khususnya untuk teman-teman Teknik Elektro angkatan 2015, teman-
teman grup Offline, Horsemen, EndTA serta teman-teman semasa sekolah.
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 ....................................................................................................... xv
DAFTAR TABEL .........................................................................................................xvii
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. Gerakan Pesawat .........................................................................................5
2.1.1. Yaw .......................................................................................................5
2.1.2. Pitch .....................................................................................................5
2.1.3. Roll .......................................................................................................6
2.2. Arduino Nano .............................................................................................6
2.2.1. Konfigurasi Pin Arduino Nano ..............................................................7
2.3. Arduino Uno ...............................................................................................8
2.4. Sensor Flex .................................................................................................9
2.5. Modul nRF24L01 ..................................................................................... 11
2.6. Motor DC ................................................................................................. 13
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
2.7. Motor Servo .............................................................................................. 13
2.7.1. Pengendalian Motor Servo .................................................................. 14
2.8. Sensor MPU-6050 .................................................................................... 15
2.9. Driver Motor L298N................................................................................. 18
2.10. Pengaturan Kecepatan Motor DC .............................................................. 19
2.11. Software Arduino IDE .............................................................................. 21
2.11.1. Pengertian Arduino Software (IDE) ..................................................... 21
2.11.2. Menulis Sketch .................................................................................... 22
2.12. Komunikasi I2C (Inter Integrated Circuit) ................................................ 23
2.13. Komunikasi SPI (Serial Peripheral Interface) ........................................... 26
BAB III PERANCANGAN PENELITIAN ............................................................. 30
3.1. Diagram Blok ........................................................................................... 30
3.2. Perancangan Perangkat Keras ................................................................... 31
3.2.1. Perancangan Bagian Penggerak Model Pesawat .................................. 31
3.2.2. Perancangan Bagian Sarung Tangan .................................................... 32
3.2.3. Perancangan Gerakan Yaw Pesawat ..................................................... 32
3.2.4. Perancangan Gerakan Pitch Pesawat ................................................... 33
3.2.5. Perancangan Gerakan Roll Pesawat ..................................................... 34
3.2.6. Perancangan Rangkaian Sensor Flex ................................................... 36
3.2.7. Perancangan Sensor MPU-6050 .......................................................... 37
3.2.8. Perancangan Rangkaian Motor DC...................................................... 38
3.2.9. Perancangan Rangkaian Servo ............................................................ 39
3.2.10. Perancangan Rangkaian Modul nRF24L01.......................................... 41
3.3. Perancangan Perangkat Lunak .................................................................. 42
BAB IV HASIL DAN PEMBAHASAN ................................................................. 45
4.1. Sistem Perangkat Keras ............................................................................ 45
4.1.1. Implementasi Alat ............................................................................... 45
4.1.2. Perubahan Rancangan Letak Servo...................................................... 46
4.1.3. Rangkaian Sarung Tangan ................................................................... 47
4.1.4. Rangkaian Penggerak Model Pesawat ................................................. 48
4.2. Sistem Penggerak Motor Dc..................................................................... 48
4.2.1 Pengujian Posisi Sensor Flex Terhadap Nilai PWM Motor Dc ............ 49
4.3. Sistem Penggerak Motor Servo ................................................................. 49
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
4.3.1. Pengujian Posisi Sensor MPU-6050 Terhadap Nilai Sudut Servo ........ 50
4.4. Sistem Komunikasi NRF24L01 ................................................................ 54
4.4.1. Pengujian Jarak Komunikasi Antar Mikrokontroler ............................. 55
4.5. Sistem Perangkat Lunak............................................................................ 59
4.5.1. Program Pembacaan Sensor MPU-6050 .............................................. 59
4.5.2. Program Pembacaan Sensor Flex......................................................... 63
4.5.3. Sistem Pengiriman & Penerimaan Data ............................................... 64
BAB V KESIMPULAN DAN SARAN ................................................................. 67
5.1. Kesimpulan............................................................................................... 67
5.2. Saran ........................................................................................................ 67
DAFTAR PUSTAKA ...................................................................................................... 68
LAMPIRAN .................................................................................................................... 60
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
DAFTAR GAMBAR
Gambar 1.1. Perancangan Blok Diagram ............................................................................3
Gambar 2.1. Gerakan Pada Pesawat[3] ...............................................................................6
Gambar 2.2. Arduino Nano ................................................................................................7
Gambar 2.3. Konfigurasi Pin Arduino Uno [5] ...................................................................8
Gambar 2.4. Rangkaian Pembagi Tegangan Sensor Flex .................................................. 10
Gambar 2.5. Sensor Flex [7]............................................................................................. 11
Gambar 2.6. Modul Wireless nRF24L01 [9] ..................................................................... 12
Gambar 2.7. Menunjukkan Prinsip Kerja Dari Motor DC ................................................. 13
Gambar 2.8. Bagian-Bagian Motor Servo ......................................................................... 14
Gambar 2.9. Gerakkan Motor Servo ................................................................................. 14
Gambar 2.10. Sensor MPU-6050 [11] .............................................................................. 15
Gambar 2.11. Konfigurasi Pin Pada Modul L298N .......................................................... 19
Gambar 2.12. Pengaturan Duty Cycle [14] ....................................................................... 20
Gambar 2.13. Pengontrolan Tegangan Output Motor [14] ................................................ 21
Gambar 2.14. Tampilan Software Arduino IDE ................................................................ 22
Gambar 2.15. Implementasi Jalur I2C .............................................................................. 23
Gambar 2.16. Gambar Untuk Sinyal Start & Stop ............................................................ 24
Gambar 2.17. Transfer Bit Pada Jalur I2C ........................................................................ 24
Gambar 2.18. Data Transfer Pada Jalur I2C ..................................................................... 25
Gambar 2.19. Sinyal Alamat & Data ................................................................................ 26
Gambar 2.20. Ilustrasi Kerja Protokol SPI ........................................................................ 26
Gambar 2.21. Komunikasi Master-Slave SPI.................................................................... 28
Gambar 2.22. Transfer Format Dengan CPHA=0 ............................................................ 28
Gambar 2.23. Transfer Format Dengan CPHA=1 ............................................................. 29
Gambar 3.1. Blok Diagram .............................................................................................. 30
Gambar 3.2. Perancangan Penggerak Model Pesawat (Tampak Depan) ............................ 31
Gambar 3.3. Perancangan Penggerak Model Pesawat (Tampak Samping) ........................ 32
Gambar 3.4. Perancangan Sarung Tangan ........................................................................ 32
Gambar 3.5. Perancangan Gerakan Yaw Pada Pesawat (Tampak Samping) ...................... 33
Gambar 3.6. Perancangan Gerakan Yaw Pada Pesawat (Tampak Atas) ............................. 33
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvi
Gambar 3.7. Perancangan Gerakan Pitch Pada Pesawat (Tampak Samping) ..................... 34
Gambar 3.8. Perancangan Gerakan Pitch Pada Pesawat (tampak atas) ............................. 34
Gambar 3.9. Perancangan Gerakan Roll Pada Pesawat (Tampak Depan) .......................... 35
Gambar 3.10. Perancangan Gerakan Roll Pada Pesawat (Tampak Atas) ........................... 35
Gambar 3.11. Rangkaian Skematik Sensor Flex Dengan Arduino Nano ........................... 36
Gambar 3.12. Rangkaian Skematik Sensor MPU-6050 Dengan Arduino Nano ................. 38
Gambar 3.13. Rangkaian Skematik Motor DC Dengan Arduino Uno & Driver Motor ..... 39
Gambar 3.14. Rangkaian Skematik Motor Servo Dengan Arduino Uno ............................ 40
Gambar 3.15. Rangkaian Skematik Modul nRF24L01 Dengan Arduino Uno (Tx) ........... 41
Gambar 3.16. Rangkaian Skematik Modul nRF24L01 Dengan Arduino Nano (Rx) ......... 42
Gambar 3.17. Flowchart Keseluruhan Program Bagian Pengirim & Bagian Penerima ..... 43
Gambar 4.1. Bentuk Fisik Bagian Model Pesawat ............................................................ 45
Gambar 4.2. Bentuk Fisik Bagian Sarung Tangan ............................................................ 46
Gambar 4.3. Rancangan Letak Servo ............................................................................... 46
Gambar 4.4. Rangkaian Sarung Tangan ........................................................................... 47
Gambar 4.5. Rangkaian Regulator Tegangan.................................................................... 47
Gambar 4.6. Rangkaian Penggerak Model Pesawat .......................................................... 48
Gambar 4.7. Posisi Kotak Model Pesawat ........................................................................ 56
Gambar 4.8. Program Pembacaan Accelerometer Pada Sensor MPU-6050 ....................... 59
Gambar 4.9. Program Pembacaan Gyro Pada Sensor MPU-6050...................................... 60
Gambar 4.10. Program Pembacaan Sensor MPU-6050 (roll, pitch, yaw) .......................... 61
Gambar 4.11. Program Konversi Nilai Sensor MPU-6050 Menjadi Nilai Servo ............... 62
Gambar 4.12. Program Pembacaan Sensor Flex ............................................................... 63
Gambar 4.13. Program Penginisialisasian Struct Data ...................................................... 64
Gambar 4.14. Deklarasi Alamat Node nRF24L01 ............................................................ 65
Gambar 4.15. Pengaturan nRF24L01 Sebagai Pengirim ................................................... 65
Gambar 4.16. Pengaturan nRF24L01 Sebagai Penerima ................................................... 65
Gambar 4.17. Memasukkan Data Sudut Servo Ke Dalam Paket ....................................... 66
Gambar 4.18. Memasukkan Data Sensor Flex Ke Dalam Paket ........................................ 66
Gambar 4.19. Mengirim Paket Data ................................................................................. 66
Gambar 4.20. Menerima Paket Data ................................................................................. 66
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvii
DAFTAR TABEL
Tabel 2.1. Konfigurasi Pin Arduino Uno [5]. ......................................................................9
Tabel 2.2. Pin-Pin Modul nRF24L01 ............................................................................... 12
Tabel 2.3. Register Accelerometer Pada Sensor MPU-6050 [12] ...................................... 15
Tabel 2.4. Register Gyro Pada Sensor MPU-6050 [12] ..................................................... 16
Tabel 2.5. Pilihan Range Accelerometer Pada Sensor MPU-6050 [12] ............................. 16
Tabel 2.6. Pilihan Range Gyro Pada Sensor MPU-6050 [12] ............................................ 16
Tabel 2.7. Register Untuk Memilih Range Accelerometer Pada Sensor MPU-6050 [12] ... 16
Tabel 2.8. Register Untuk Memilih Range Gyro Pada Sensor MPU-6050 [12] ................. 16
Tabel 3.1. Tabel Pengukuran Nilai ADC Terhadap Posisi Sensor Flex Pada Jari .............. 37
Tabel 3.2. Tabel Konfigurasi Hubungan Pin Arduino Nano Dengan Sensor MPU-6050 ... 38
Tabel 3.3. Tabel Konfigurasi Hubungan Pin Arduino Uno Dengan Driver Motor ............. 39
Tabel 3.4. Tabel Konfigurasi Hubungan Pin Arduino Uno Dengan Motor Servo .............. 40
Tabel 3.5. Tabel Konfigurasi Hubungan Pin Arduino Uno (Tx) Dengan nRF24L01 ......... 41
Tabel 3.6. Tabel Konfigurasi Hubungan Pin Arduino Nano (Rx) Dengan nRF24L01 ....... 42
Tabel 4.1. Data Hasil Pengujian Posisi Sensor Flex Terhadap Nilai PWM Motor DC ....... 50
Tabel 4.2. Pengujian Posisi Sensor MPU-6050 Terhadap Nilai Sudut Servo Roll ............. 51
Tabel 4.2. (Lanjutan) Pengujian Posisi Sensor MPU-6050 Terhadap Nilai Sudut Servo Roll
........................................................................................................................................ 52
Tabel 4.3. Pengujian Posisi Sensor MPU-6050 Terhadap Nilai Sudut Servo Pitch............ 52
Tabel 4.4. Pengujian Posisi Sensor MPU-6050 Terhadap Nilai Sudut Servo Yaw ............. 53
Tabel 4.5. Pengujian Data Drift Yang Terjadi Pada Sensor MPU-6050 ............................ 54
Tabel 4.5. (Lanjutan) Pengujian Data Drift Yang Terjadi Pada Sensor MPU-6050 ........... 55
Tabel 4.6. Hasil Pengujian Pertama Jarak Komunikasi Antar Mikrokontroler ................... 56
Tabel 4.7. Hasil Pengujian Kedua Jarak Komunikasi Antar Mikrokontroler ..................... 58
Tabel 4.8. Nilai Roll, Pitch, & Yaw Sebelum Dikonversi Ke Nilai Servo .......................... 63
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Robot adalah sebuah alat mekanik yang dapat melakukan tugas fisik baik
menggunakan pengawasan dan kontrol manusia, ataupun program yang sudah tertanam
dalam sebuah prosesor. Istilah robot berasal dari bahasa Cheko “robota” yang berarti kuli
atau pekerja yang tidak mengenal lelah dan bosan[1]. Robot biasanya digunakan dalam
bidang industri untuk mempermudah pekerjaan dan meminimalisir kesalahan yang
dilakukan oleh manusia. Namun, seiring perkembangan jaman, saat ini robot telah
digunakan dibidang hiburan, pendidikan, kesehatan, alat pembantu rumah tangga, bahkan
sebagai mainan.
Robot sebagai mainan sendiri telah mengalami perkembangan yang pesat, contohnya
saja mobil atau pesawat remote control, line follower, dsb. Oleh sebab itu dirancanglah
sebuah robot model pesawat yang dapat dikontrol melalui sarung tangan. Akan tetapi,
sebelum benar-benar membuat robot pesawat yang dapat benar-benar terbang dan dikontrol
oleh sarung tangan, ada baiknya membuat modelnya terlebih dahulu. Berdasarkan hal
tersebut, maka dirancanglah robot model pesawat yang dapat dikontrol menggunakan sarung
tangan.
Kontrol robot model pesawat sederhana menggunakan pembacaan sensor pada
sarung tangan adalah alat yang berupa sarung tangan dan robot model pesawat yang
digerakkan oleh kontroler menggunakan mikrokontroler. Sarung tangan berfungsi sebagai
pengontrol robot model pesawat yang dapat mengatur pergerakan robot model pesawat.
Digunakan dua buah mikrokontroler yang saling berkomunikasi secara wireless agar alat ini
dapat bekerja. Sebuah mikrokontroler berada pada sarung tangan, dan satunya lagi berada
pada robot model pesawat. Mikrokontroler adalah otak dalam pengendalian alat ini yang
menggunakan bahasa pemrograman agar alat dapat bekerja sesuai dengan kehendak
perancang.
Pada penelitian ini, akan digunakan dua arduino yang berfungsi sebagai
mikrokontroler, sensor flex yang berfungsi untuk mengatur kecepatan putaran baling-baling,
sensor MPU-6050 yang disesuaikan dengan beberapa servo yang berfungsi untuk mengatur
kemiringan dan naik turunnya robot model pesawat, dan modul nrf24l01 yang berfungsi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
sebagai modul komunikasi jarak jauh. Sensor MPU-6050 digunakan untuk mendeteksi
besaran sudut rotasi pada sarung tangan yang kemudian akan disesuaikan dengan servo-
servo yang menggerakan model pesawat. Sensor MPU-6050 dipilih karena memiliki
kelebihan dibandingkan dengan sensor lain yaitu sensor ini tidak bersentuhan langsung
secara fisik dengan lingkungan sekitar sehingga sangat cocok digunakan pada benda
bergerak bebas[2].
1.2 Tujuan dan Manfaat Penelitian
Tujuan dari penelitian ini adalah untuk menciptakan sarung tangan yang dapat
mengontrol pergerakan robot model pesawat secara wireless.
Manfaat dari penelitian ini adalah:
1. Robot model pesawat ini diharapkan dapat memberikan sumbangan pemikiran dan
menjadi acuan dalam penelitian selanjutnya mengenai robot pesawat sehingga dapat
diciptakan robot pesawat yang benar-benar bisa terbang dan dikendalikan
menggunakan kontrol pada sarung tangan.
2. Sebagai sarana pembelajaran mengenai komunikasi wireless antara dua buah
mikrokontroler (arduino).
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 satu buah arduino nano.
2. Menggunakan satu buah arduino uno.
3. Komunikasi wireless menggunakan dua buah modul nrf24l01.
4. Menggunakan sensor MPU-6050 yang berfungsi untuk mengatur pergerakan servo.
5. Menggunakan servo yang berfungsi untuk mengatur pergerakan robot model
pesawat berupa gerakan pitch, roll dan yaw.
6. Menggunakan sensor flex yang berfungsi untuk mengatur kecepatan motor dc yang
berfungsi sebagai baling-baling pesawat.
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 MPU-6050, sensor flex,
dan komunikasi wireless antar mikrokontroler (arduino) yang akan digunakan dalam
pembuatan tugas akhir ini.
2. Studi kasus terhadap alat-alat yang memiliki fungsi mirip seperti alat yang akan
dibuat pada tugas akhir ini. Tahap ini dilakukan untuk memahami prinsip kerja alat-
alat yang memiliki fungsi mirip seperti alat yang akan dibuat pada tugas akhir ini,
sehingga dapat diterapkan pada alat ini.
3. Perancangan sistem software dan hardware. Tahap ini bertujuan untuk menentukan
komponen-komponen yang akan digunakan pada alat yang akan dibuat dengan
mempertimbangkan faktor-faktor permasalahan dan kebutuhan yang telah
ditentukan. Pada gambar 1.1 memperlihatkan blok model yang akan dirancang.
Gambar 1.1. Perancangan Blok Diagram
4. Eksperimen, yaitu dengan melakukan pengujian karakteristik sensor flex dan sensor
MPU-6050 yang akan digunakan.
5. Pembuatan sistem hardware, meliputi pembuatan dan perencanaan tata letak
mikrokontroler (arduino), sensor, motor, dan servo, dan juga perancangan bentuk
robot model pesawat.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
6. Pembuatan sistem software, pembuatan ini bertujuan agar alat dapat bekerja.
Pembuatan software menggunakan bahasa pemrograman arduino.
7. Proses pengujian dan pengambilan data. Pengambilan data dilakukan dengan cara
menguji keseluruhan sistem apakah sudah sesuai dengan proses yang diinginkan,
serta mengambil data kesesuaian gerakan (yaw, pitch dan roll) antara sarung tangan
dengan robot model pesawat, dan pengujian komunikasi (jarak) antar mikrokontroler
(arduino).
8. Analisis dan penyimpulan hasil percobaan. Analisis data dilakukan untuk
menentukan apakah berhasil atau tidaknya penelitian, dan memeriksa apakah alat
sudah bekerja sesuai dengan rancangan dan bisa sesuai bekerja dengan kondisi yang
diinginkan, meliputi kesesuaian gerakan antara sarung tangan dengan robot model
pesawat. Lalu menyimpulkan data-data yang telah didapat dari percobaan-percobaan
yang dilakukan.
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 sensor MPU-6050,
sensor flex, arduino, dan modul nRF24L01 serta hal-hal yang berkaitan dengan instrumen
seperti gerakan pesawat.
2.1. Gerakan Pesawat
Pesawat terbang mempunyai gerak dasar pesawat yang berfungsi agar pesawat dapat
bergerak stabil di udara pada saat terbang. Adapun gerakan-gerakan dasar pesawat itu adalah
sebagai berikut, seperti ditunjukkan pada Gambar 2.1.
2.1.1. Yaw
Yaw merupakan gerakan ke kanan dan ke kirinya pesawat atau gerakan menggeleng
pada pesawat. Gerakkan yaw dikendalikan oleh rudder pada pesawat, untuk dapat
melakukan gerakan yaw, pilot menggerakkan rudder yang dikendalikan oleh rudder pedal
yang berada pada cockpit. Apabila pedal rudder kanan diinjak, maka rudder akan bergerak
kekanan dan pesawat akan mengarah ke kanan. Dan apabila pedal kiri diinjak, maka rudder
akan bergerak kekiri dan pesawat akan mengarah ke kiri.
2.1.2. Pitch
Pitch merupakan gerakan keatas dan kebawahnya pesawat atau gerakan
menggangguk pada pesawat. Gerakan pitch dilakukan ketika pesawat akan melakukan take
off atau pada saat pesawat akan terbang naik atau turun. Gerakan pitch dikendalikan oleh
elevator pada pesawat, untuk dapat melakukan gerakan pitch, pilot menggerakkan elevator
yang berada pada bagian ekor pesawat yang dikendalikan oleh stick control yang berada
pada cockpit. Pergerakan elevator dikendalikan dengan mengunakan stick control yang
berada pada cockpit. Apabila stick control digerakkan kebelakang, maka elevator akan
bergerak keatas dan menyebabkan pesawat bergerak keatas. Begitupula sebaliknya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
2.1.3. Roll
Roll merupakan gerakan berputar pesawat, yaitu gerakan kemiringan kekiri atau
kemiringan kekanannya pesawat. Gerakan roll dilakukan ketika pesawat akan berbelok ke
arah kiri atau ke arah kanan. Gerakkan roll dikendalikan oleh aileron pada pesawat, untuk
dapat melakukan gerakan roll, pilot mengerakkan aileron yang berada pada sayap pesawat
yang dikendalikan oleh stick control yang berada pada cockpit. Apabila stick control
digerakkan ke kanan, maka aileron bagian kanan sayap akan naik keatas dan aileron bagian
kiri sayap akan turun kebawah dan menyebabkan pesawat melakukan gerakan roll kesebelah
kanan. Begitupula sebaliknya.
Gambar 2.1. Gerakan Pada Pesawat[3]
2.2. 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,
mengcompile 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
7
dihubungkan ke komputer menggunakan port USB Mini-B. Arduino Nano dirancang dan
diproduksi oleh perusahaan Gravitech [4].
2.2.1. Konfigurasi Pin Arduino Nano [4]
Gambar 2.2. Arduino Nano
Arduino Nano memiliki 30 pin. Berikut adalah konfigurasi pin Arduino Nano
berdasarkan Gambar 2.2. 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.
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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
28 RESET untuk menghidupkan ulang mikrokontroler.
29 GND adalah pin ground.
30 VIN merupakan pin yang berfungsi sebagai pin masukan catu daya digital.
2.3. Arduino Uno
Arduino Uno adalah board berbasis mikrokontroler pada ATMega 328. Board
Arduino Uno seperti yang ditunjukan Gambar 2.3. memiliki 14 digital input / output pin
(dimana 6 pin dapat digunakan sebagai output PWM), 6 input analog, 16 MHz oslilator
kristal, konektor USB, jack listrik dan tombol reset. Pin-pin ini berisi semua yang diperlukan
untuk mendukung mikrokontroler, hanya terhubung ke komputer dengan kabel USB atau
sumber tegangan bisa menggunakan adaptor AC – DC atau baterai. Setiap digital pin pada
board Arduino Uno beroperasi pada tegangan 5 volt. Pin-pin digital tersebut juga
memungkinkan dapat mengeluarkan atau menerima arus maksimal sebesar 40 mA dan
memiliki internal pull-up resistor (yang terputus secara default) antara 20-50 KΩ.
Spesifikasi Arduino Uno ditunjukan pada alokasi penempatan pin-pin Arduino Uno pada
Tabel 2.1 [5].
Gambar 2.3. Konfigurasi Pin Arduino Uno [5]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
Tabel 2.1. Konfigurasi Pin Arduino Uno [5].
No. Parameter Keterangan
1. ATMega 328
IC mikrokontroler yang digunakan pada Arduino Uno. IC
ATMega 328 memiliki flash memory 32 KB (dengan 0,5 KB
digunakan untuk boatloader). ATMega 328 juga memiliki 2
KB SRAM dan 1 KB EEPROM yang dapat ditulis dan dibaca
dengan EEPROM library.
2. Jack USB Untuk komunikasi mikrokontroler dengan PC
3. Jack Adaptor Masukan power eksternal bila Arduino bekerja mandiri (tanpa
komunikasi dengan PC melalui kabel serial USB.
4.. Tombol Reset Tombol reset internal yang digunakan untuk mereset modul
Arduino.
5. SDA dan SCL Komunikasi Two Wire Interface (TWI) atau inter integrated
circuit (12C) dengan menggunakan wire library.
6. GND dan AREF • GND = Pin ground dari regulator tegangan board Arduino.
• AREF = Tegangan Referensi untuk input analong.
7. Pin Digital Pin yang digunakan untuk menerima input digital dan
memberi output berbentuk digital (0 dan 1 atau low dan high)
8. Pin serial
Digunakan untuk menerima dan mengirimkan data serial TTL
(Receiver(Rx), Transmiter(Tx)). Pin 0 dan 1 sudah terhubung
kepada pin serial USB to TTL sesuai dengan pin ATMega.
9. Pin Power
• Vin = Masukan tegangan input bagi Arduino ketika menggunakan sumber tegangan eksternal.
• 5 V = Sumber tegangan yang dihasilkan regulator internal board Arduino
• 3,3 V = Sumber tegangan yang dihasilkan regulator internal board Arduino. Arus maksimal pada pin ini adalah 50 mA.
• GND = Pin ground dari regulator tegangan board Arduino.
• IOREF = Tegangan Referensi
10. Pin Analogin Menerima input dari perangkat analog lainya.
2.4. Sensor Flex
Sensor flex adalah sensor lengkung yang fleksibel secara fisik sehingga dapat
mengikuti pergerakan jari manusia. Range resistansi sebuah sensor flex berkisar 10 KΩ – 40
KΩ[6]. Sensor flex berfungsi untuk mendeteksi kelengkungan pada sensor ketika ditekan.
Sensor flex memiliki prinsip kerja sama seperti potensiometer. Sensor flex memiliki 2 kaki
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
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 melalui
rangkaian pembagi tegangan. Output resistansi ini akan diberikan tegangan yang nantinya
akan dibaca oleh mikrokontroler[7].
Mikrokontroler mengkonversi data menggunakan ADC (analog to digital
converter), dimana data masukkannya didapat dari tegangan yang sudah terkena resistansi
[7]. Rangkaian sensor flex menggunakan rangkaian pembagi tegangan yang berfungsi untuk
membagi tegangan keluaran arduino (5V) dengan tegangan output sensor flex ke data (pin
analog input arduino).
Gambar 2.4. Rangkaian Pembagi Tegangan Sensor Flex
Rumus menghitung tegangan sensor flex & nilai adc sensor flex ditunjukkan pada
persamaan (2.1) dan (2.2).
Vsensorflex = (𝑅𝑓𝑙𝑒𝑥
𝑅1+𝑅𝑓𝑙𝑒𝑥) x Vcc (2.1)
Data ADC = Vsensor𝑓𝑙𝑒𝑥
5 𝑣𝑜𝑙𝑡 x 210 (2.2)
Keterangan:
Vsensorflex = Nilai tegangan sensor flex (Volt)
Vcc = Tegangan masukkan mikrokontroler (Volt)
Rflex = Nilai Resistansi sensor flex (Ω)
R1 = Nilai Resistansi pembagi tegangan (Ω)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
Perhitungan pada sensor flex mengacu pada persamaan pada persamaan (2.1) 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)
Vsensorflex = (10 K Ω
10 K Ω+10 K Ω) x 5 Volt
Vsensorflex = 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 : 60 KΩ..
• Nilai power : 0,5 Watt dst. 1 Watt sampai batas maksimal.
• Resistansi flat 10 KΩ ± 30%.
• Rentang lengkungan kontur antara 45 KΩ – 125 KΩ [7].
• Gambar sensor flex ditunjukkan seperti Gambar 2.5.
Gambar 2.5. Sensor Flex [7]
2.5. Modul nRF24L01
Modul Wireless nRF24L01 merupakan modul komunikasi jarak jauh yang
menggunakan frekuensi pita gelombang radio 2.4-2.5 GHz ISM (Industrial Scientific and
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
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[8]. Gambar modul nRF24L01
ditunjukkan pada Gambar 2.6.
Gambar 2.6. Modul Wireless nRF24L01 [9]
Tabel 2.2. Pin-Pin Modul nRF24L01
Nama Pin Singkatan Keterangan
Ground Ground Koneksi system ke Ground
Vcc Daya Daya modul menggunakan 3.3V
CE Chip Enable Digunakan untuk mengaktifkan
komunikasi SPI
CSN Chip Select Not
Untuk menjaga agar pulsa clock tetap
tinggi, karena jika rendah akan
menonaktifkan SPI
SCK Serial Clock Menyediakan pulsa clock dengan
komunikasi SPI
MOSI Master Out Slave In
Terhubung dengan pin MOSI dari
mikrokontroller, untuk menerima data dari
mikrokontroller
MISO Master In Slave Out
Terhubung ke MISO dari pin
mikrokontroller, berfungsi sebagai modul
pengirim data dari mikrokontroller
IRQ Interrupt Pin rendah aktif, digunakan saat interupsi
diperlukan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
2.6. Motor DC [10]
Motor DC atau motor arus searah adalah suatu alat yang berfungsi mengubah tenaga
listrik arus searah menjadi tenaga gerak atau tenaga mekanik. Prinsip kerja dari motor DC
hampir sama dengan generator AC. Prinsip dasarnya adalah apabila suatu kawat berarus
diletakkan diantara kutub-kutub magnet (U-S), maka pada kawat itu akan bekerja suatu gaya
yang menggerakkan kawat, hal itu ditunjukkan pada Gambar 2.7.
Gambar 2.7. Menunjukkan Prinsip Kerja Dari Motor DC
2.7. Motor Servo [1]
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.
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) di mana 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 mekanik pada motor servo seperti yang ditunjukkan pada gambar 2.8.
terdiri dari:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
a. 3 jalur kabel: power, ground, dan control.
b. Internal gear.
c. Potentiometer.
d. Feedback control.
Gambar 2.8. Bagian-Bagian Motor Servo
2.7.1. Pengendalian Motor Servo [1]
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°. Dari Gambar 2.9. di bawah, durasi pulsa
menentukan sudut dari batang output. Gerakkan motor servo ditunjukkan pada Gambar
2.9.
Gambar 2.9. Gerakkan Motor Servo
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
2.8. Sensor MPU-6050
MPU-6050 adalah chip IC inverse yang didalamnya terdapat sensor Accelerometer
dan Gyroscope yang sudah terintergrasi. Accelerometer digunakan untuk mengukur
percepatan, percepatan gerakan dan juga percepatan gravitasi. Accelerometer sering
digunakan untuk menghitung sudut kemiringan, dan hanya dapat melakukan dengan nyata
ketika statis dan tidak bergerak. Untuk mendapatkan sudut akurat kemiringan, sering
dikombinasikan dengan satu atau lebih gyro dan kombinasi data yang digunakan untuk
menghitung sudut. Gyroscope adalah perangkat untuk mengukur atau mempertahankan
orientasi, yang berlandaskan pada prinsip-prinsip momentum sudut [11]. Gambar sensor
MPU-6050 ditunjukkan pada Gambar 2.10.
Gambar 2.10. Sensor MPU-6050 [11]
Data accelerometer dan gyro hasil pembacaan dari sensor MPU-6050 akan masuk
kedalam register-register yang ditunjukkan pada Tabel 2.3. dan Tabel 2.4.
Tabel 2.3. Register Accelerometer Pada Sensor MPU-6050 [12]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
Tabel 2.4. Register Gyro Pada Sensor MPU-6050 [12]
Pembacaan nilai accelerometer dan gyro pada sensor MPU-6050 memiliki pilhan
range yang dapat digunakan, pilihan range yang dapat digunakan ditunjukkan pada Tabel
2.5. dan Tabel 2.6. Dan pengaturan register untuk pilihan range dapat dilihat pada Tabel 2.7.
dan Tabel 2.8. Nilai reset untuk seluruh register adalah 0x00 kecuali untuk register 107: 0x40
dan register 117: 0x68[12].
Tabel 2.5. Pilihan Range Accelerometer Pada Sensor MPU-6050 [12]
Tabel 2.6. Pilihan Range Gyro Pada Sensor MPU-6050 [12]
Tabel 2.7. Register Untuk Memilih Range Accelerometer Pada Sensor MPU-6050 [12]
Tabel 2.8. Register Untuk Memilih Range Gyro Pada Sensor MPU-6050 [12]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
Perhitungan sudut berdasarkan data accelerometer ditunjukkan pada persamaan (2.3)
dan (2.4).
𝐴𝜑 = atan(𝐴𝑐𝑐𝑌
√𝐴𝑐𝑐𝑋2 + 𝐴𝑐𝑐𝑍2) (2.3)
𝐴𝜃 = atan(−𝐴𝑐𝑐𝑋
√𝐴𝑐𝑐𝑌2 + 𝐴𝑐𝑐𝑍2) (2.4)
Perhitungan sudut berdasarkan data gyro ditunjukkan pada persamaan (2.5) - (2.7).
Ө = ∫ 𝜔. 𝑑𝑡 = 𝜔. 𝑡 + Ө0 (2.5)
𝐺𝜑 = 𝐺𝜑 + 𝐺𝑋 . ∫ 𝑑𝑡 (2.6)
𝐺𝜃 = 𝐺𝜃 + 𝐺𝑌 . ∫ 𝑑𝑡 (2.7)
Perhitungan sudut yaw ditunjukkan pada persamaan (2.8).
Ψ = Ψ + 𝐺𝑍 . ∫ 𝑑𝑡 (2.8)
Perhitungan sudut roll dan pitch dengan kompensasi dari perhitungan sudut dari
percepatan dan perhitungan sudut dari gyro dinamakan Complementary Filter ditunjukkan
pada persamaan (2.9) dan (2.10), karena yaw tidak dapat dihitung dari data accelerometer,
Complementary Filter tidak dapat digunakan untuk yaw.
𝜑 = 0.96 ∗ 𝐺𝜑 + 0.04 ∗ 𝐴𝜑 (2.9)
𝜃 = 0.96 ∗ 𝐺𝜃 + 0.04 ∗ 𝐴𝜃 (2.10)
Keterangan:
𝐴𝜑 = accelerometer angle X 𝐺𝑋 = gyro X Ψ = yaw
𝐴𝜃 = accelerometer angle Y 𝐺𝑌 = gyro Y 𝜑 = roll
𝐺𝜑 = gyro angle X 𝐺𝑍 = gyro Z 𝜃 = pitch
𝐺𝜃 = gyro angle Y
Spesifikasi dari Sensor MPU-6050 yang tertera pada Gambar 2.10 adalah:
1. Berbasis Chip MPU-6050.
2. Supply tegangan berkisar 3-5V.
3. Gyroscope range + 250 500 1000 2000°/s.
4. Acceleration range: ± 2 ± 4 ± 8 ± 16 g.
5. Communication standard I2C.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
6. Chip built-in 16 bit AD converter, 16 bits data output.
7. Jarak antar pin header 2.54 mm.
8. Dimensi modul 20.3mm x 15.6mm. [13]
2.9. Driver Motor L298N [7]
Driver motor L298N merupakan modul driver motor DC yang paling banyak
digunakan untuk mengontrol kecepatan serta arah perputaran motor DC. L298 adalah driver
motor berbasis H-Bridge, mampu menangani beban hingga 4A pada tegangan 6 V–46 V.
Dalam chip terdapat dua rangkaian H-Bridge. IC L298 merupakan sebuah IC tipe H-bridge
yang mampu mengendalikan beban-beban induktif seperti relay, solenoid, motor DC dan
motor stepper. Mampu mengeluarkan output tegangan untuk motor DC sebesar 50 Volt dan
dapat mengendalikan 2 untuk motor DC.
Pengaturan kecepatan motor digunakan teknik PWM (Pulse with Modulation) yang
diinputkan dari mikrokontroler melalui pin enable. PWM untuk kecepatan rotasi yang
bervariasi level high-nya.
Spesifikasi:
1. Tipe: Dual H-Bridge
2. Chip kontrol: ST L298N
3. Logic voltage: 5 V DC
4. Drive voltage: 5-35 V DC
5. Logical current: 0 mA-36 mA
6. Driving current: 2 A (Max. single bridge)
7. Temperatur: -20 C – 135 C
8. Power maksimum: 25 W
9. Berat: 30 g
10. Ukuran: 43 x 43 x 27 mm
Kelebihan L298N motor driver adalah:
1. Lebih presisi dalam mengontrol motor
2. Dapat mengendalikan motor yang besar (maksimal 2 A)
3. Dilengkapi dengan heatsink sehingga lebih tahan panas
4. Mudah untuk pemasangannya
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
Untuk pemasangan driver L298N ini dibutuhkan 6 buah pin mikrokontroler. Dua
buah untuk pin enable (masing-masing satu untuk tiap motor DC). Empat buah untuk
mengatur kecepatan motor DC tersebut. Pada prinsipnya rangkaian driver motor L298N ini
dapat mengatur tegangan dan arus sehingga kecepatan dan arah motor dapat diatur.
Konfigurasi pin pada modul L298N ditunjukkan pada gambar 2.11.
Gambar 2.11. Konfigurasi Pin Pada Modul L298N
Driver motor ini pada prinsipnya sama dengan L293D. Cara pengontrolannya pun
sama. Perbedaannya mendasar hanya terletak pada karakteristik elektronikanya, yaitu
kemampuan L298N dalam melewatkan arus untuk motor DC lebih besar yaitu sebesar 3 A.
Agar mampu bekerja dengan baik maka diperlukan beberapa komponen dioda pendukung.
Fitur Modul L298N Driver Motor DC Dual H-Bridge:
1. Tegangan operasi 0-46 V.
2. Tegangan logic 4,5-7 V.
3. Arus 4 A.
4. Heatsink untuk membuang panas.
5. Regulator 7805 dengan keluaran 5 V.
6. Dioda proteksi.
7. Mampu mengontrol 2 motor DC.
2.10. Pengaturan Kecepatan Motor DC
Pengaturan kecepatan motor DC menggunakan prinsip kerja pengaturan duty cycle
atau pewaktukan kondisi on-off tiap satuan waktu atau tiap periode atau yang disebut dengan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
PWM (pulse width modulation). Apabila nilai duty cycle semakn besar maka kecepatan
motor pun akan semakin cepat putarannya. Jadi, apabila nilai PWM pada arduino bernilai 0
sampai dengan 255, atau besarnya nilai duty cycle dari 0% sampai dengan 100%, maka
semakin besar nilai PWM atau duty cycle nya akan semakin cepat pula putaran motornya.
Dan apabila kita ukur dengan voltmeter nilai pada tegangan yang masuk pada motor, maka
nilai tegangan akan mengikuti nilai PWM, yaitu semakin besar PWM nya maka akan
semakin besar pula tegangan yang masuk pada motor (semakin mendekati tegangan sumber
dari driver).
Gambar 2.12. Pengaturan Duty Cycle [14]
Dengan cara mengatur lebar pulsa “on” dan “off” dalam satu periode gelombang
melalui pemberian besar sinyal referensi output dari suatu PWM akan didapat duty cycle
yang diinginkan. Duty cycle dari PWM dapat dinyatakan sebagai:
Duty Cycle = Ton / (Ton+Toff) * 100% (2.11)
Keterangan :
Ton = Waktu Pulsa “HIGH”
Toff = Waktu Pulsa “LOW”
D = Duty Cycle yaitu lamanya pulsa high dalam satu periode
Duty cycle 100% berarti sinyal tegangan pengatur motor dilewatkan seluruhnya. Jika
tegangan catu 100V, maka motor akan mendapat tegangan 100V. Pada duty cycle 50%,
tegangan pada motor hanya akan diberikan 50% dari total tegangan yang ada, begitu
seterusnya.
Untuk melakukan perhitungan pengontrolan tegangan output motor dengan metode
PWM dapat dilihat pada ilustrasi Gambar 2.13. di bawah ini:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
Gambar 2.13. Pengontrolan Tegangan Output Motor [14]
Average output = (a / a+b) * Vfull (2.12)
Keterangan :
Average output = Tegangan output pada motor yang dikontrol oleh PWM
a = Nilai duty cycle saat kondisi sinyal “on”
b = Nilai duty cycle saat kondisi sinyal “off”
Vfull = Tegangan maksimal pada motor
2.11. Software Arduino IDE [7]
2.11.1. Pengertian Arduino Software (IDE)
IDE itu merupakan kependekan dari Integrated Developtment Enviroenment, atau
secara bahasa mudahnya merupakan lingkungan terintegrasi yang digunakan untuk
melakukan pengembangan. Disebut sebagai lingkungan karena melalui software inilah
arduino dilakukan pemrograman untuk melakukan fungsi-fungsi yang dibenamkan melalui
sintaks pemrograman. Arduino menggunakan bahasa pemrograman sendiri yang
menyerupai bahasa C. Bahasa pemrograman arduino (sketch) sudah dilakukan perubahan
untuk memudahkan pemula dalam melakukan pemrograman dari bahasa aslinya. Sebelum
dijual ke pasaran, IC mikrokontroler arduino telah ditanamkan suatu program bernama
Bootlader yang berfungsi sebagai penengah antara compiler arduino dengan mikrokontroler.
Arduino IDE dibuat dari bahasa pemrograman JAVA. Arduino IDE juga dilengkapi
dengan library C/C++ yang biasa disebut Wiring yang membuat operasi input dan output
menjadi lebih mudah. Arduino IDE ini dikembangkan dari software processing yang
dirombak menjadi arduino IDE khusus untuk pemrograman dengan arduino.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
2.11.2. Menulis Sketch
Program yang ditulis dengan menggunaan arduino software (IDE) disebut sebagai
sketch. Sketch ditulis dalam suatu editor teks dan disimpan dalam file dengan ekstensi .ino.
Teks editor pada arduino software memiliki fitur seperti cutting/paste dan searching /
replacing sehingga memudahkan kamu dalam menulis kode program.
Pada software arduino IDE, terdapat semacam message box berwarna hitam yang
berfungsi menampilkan status, seperti pesan error, compile, dan upload program. Di bagian
bawah paling kanan sotware arduino IDE, menunjukan board yang terkonfigurasi beserta
COM ports yang digunakan.
Beberapa fungsi dari arduino IDE yang sering digunakan terletak pada toolbar.
Terdapat 6 buah tombol pada toolbar tersebut yang memiliki fungsi sesuai dengan deskripsi
pada Gambar 2.14. adalah:
1. Verify: berfungsi untuk melakukan checking kode yang kamu buat apakah sudah
sesuai dengan kaidah pemrograman yang ada atau belum
2. Upload: berfungsi untuk melakukan kompilasi program atau kode yang kamu buat
menjadi bahasa yang dapat dipahami arduino
3. New: berfungsi untuk membuat sketch baru
4. Open: berfungsi untuk membuka sketch yang pernah kamu buat dan membuka
kembali untuk dilakukan editing atau sekedar upload ulang ke arduino.
5. Save: berfungsi untuk menyimpan sketch yang telah dibuat.
6. Serial Monitor: Serial monitor merupakan jendela yang menampilkan data apa saja
yang dikirimkan atau dipertukarkan antara arduino dengan sketch pada port serial-
nya.
Gambar 2.14. Tampilan Software Arduino IDE
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
2.12. Komunikasi I2C (Inter Integrated Circuit) [15]
Konsep dasar komunikasi 2 arah antar IC dan/atau antar sistem secara serial
menggunakan 2 kabel. Sistem bus Inter-IC, yang umumnya dikenal sebagai bus I2C, adalah
sebuah control bus yang menyediakan jalur komunikasi antara integrated circuits dalam
sebuah sistem dengan menggunakan pin yang sangat sedikit. Sistem ini dikembangkan oleh
Philips pada awal tahun 1980-an, bus dua kabel sederhana ini dengan bantuan sebuah
protokol software-defined telah menjadi standar di seluruh dunia untuk sistem kontrol
mengenai berbagai macam hal mulai sensor temperatur sampai dengan EEPROM, general-
purpose I/O, A/D & D/A converters, dan semua jenis microprocessors.
Gambar 2.15. menunjukkan implementasi dari jalur I2C. Dengan I2C hanya
membutuhkan dua jalur untuk berkomunikasi antar perangkat. Kita tidak memerlukan
address decoder untuk mengimplementasi jalur I2C. Dua jalur tersebut adalah SDA (Serial
Data) dan SCL (Serial Clock). SCL merupakan jalur yang digunakan untuk mensinkronisasi
transfer data pada jalur I2C, sedangkan SDA merupakan jalur untuk data. Beberapa
perangkat dapat terhubung ke dalam jalur I2C yang sama dimana SCL dan SDA terhubung
ke semua perangkat tersebut, hanya ada satu perangkat yang mengontrol SCL yaitu
perangkat master. Jalur dari SCL dan SDA ini terhubung dengan pull-up resistor yang besar
resistansinya tidak menjadi masalah (bisa 1K, 1.8K,4.7K, 10K, 47K atau nilai diantara range
tersebut).
Gambar 2.15. Implementasi Jalur I2C
Dengan adanya pull-up disini, jalur SCL dan SDA menjadi open drain, yang
maksudnya adalah perangkat hanya perlu memberikan output 0 (LOW) untuk membuat jalur
menjadi LOW, dan dengan membiarkannya pull-up resistor sudah membuatnya HIGH.
Umumnya dalam I2C ada satu perangkat yang berperan menjadi master (meskipun
dimungkinkan beberapa perangkat, dalam jalur I2C yang sama, menjadi master) dan satu
atau beberapa perangkat slave. Dalam jalur I2C, hanya perangkat master yang dapat
mengontrol jalur SCL yang berarti transfer data harus diinisialisasi terlebih dahulu oleh
perangkat master melalui serangkaian pulsa clock (slave tidak bisa, tapi ada satu kasus yang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
disebut clockstreching). Tugas perangkat slave hanya merespon apa yang diminta master.
Slave dapat memberi data ke master dan menerima data dari master setelah server
melakukan inisialisasi. Misalkan mikrokontroler (uC) adalah perangkat master yang
terhubung dalam satu I2C dengan perangkat-perangkat slave seperti modul pengendali
motor servo, modul kompas, sensor TPA81 dan sensor lainnya.
Gambar 2.16. menunjukkan sinyal untuk start dan stop. Sebagaimana telah
dijelaskan sebelumnya, bahwa master terlebih dahulu menginisialisasi sebelum memulai
transfer data antara slave-nya. Inisialisasi diawali dengan sinyal START (transisi high ke low
pada jalur SDA dan kondisi high pada jalur SCL, lambang S pada gambar 2.16.), lalu
transfer data dan sinyal STOP (transisi low ke high pada jalur SDA dan kondisi high pada
jalur SCL, lambang P pada gambar 2.16.) untuk menandakan akhir transfer data.
Gambar 2.16. Gambar Untuk Sinyal Start & Stop
Gambar 2.17. menunjukkan transfer bit pada jalur I2C. Banyaknya byte yang dapat
dikirimkan dalam satu transfer data itu tidak ada aturannya. Jika transfer data yang ingin
dilakukan sebesar 2 byte, maka pengiriman pertama adalah 1 byte dan setelah itu 1 byte.
Setiap byte yang di transfer harus diikuti dengan bit Acknowledge (ACK) dari si penerima,
menandakan data berhasil diterima. Byte yang dikirim dari pengirim diawali dari bit MSB.
Saat bit dikirim, pulsa clock (SCL) di set ke HIGH lalu ke LOW. Bit yang dikirim pada jalur
SDA tersebut harus stabil saat periode clock (SCL) HIGH. Kondisi HIGH atau LOW dari
jalur data (SDA) hanya dapat berubah saat kondisi sinyal SCL itu LOW.
Gambar 2.17. Transfer Bit Pada Jalur I2C
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
Gambar 2.18. menunjukkan data transfer pada jalur I2C. Setiap pulsa clock itu
dihasilkan (di jalur SCL) untuk setiap bit (di jalur SDA) yang ditransfer. Jadi untuk
pengiriman 8 bit akan ada 9 pulsa clock yang harus dihasilkan (1 lagi untuk bit ACK).
Kronologi sebelum perangkat penerima memberikan sinyal ACK adalah sebagai berikut:
saat pengirim selesai mengirimkan bit ke-8, pengirim melepaskan jalur SDA ke pull-up
sehingga menjadi HIGH. Saat kondisi tersebut terjadi, penerima harus memberikan kondisi
LOW ke SDA saat pulsa clock ke-9 berada dalam kondisi HIGH.
Gambar 2.18. Data Transfer Pada Jalur I2C
Jika SDA tetap dalam kondisi HIGH saat pulsa clock ke-9, maka ini didefinisikan
sebagai sinyal Not Acknowledge (NACK). Master dapat menghasilkan sinyal STOP untuk
menyudahi transfer, atau mengulang sinyal START untuk memulai transfer data yang baru.
Ada 5 kondisi yang menyebabkan NACK:
1. Tidak adanya penerima dengan alamat yang diminta pada jalur, sehingga tidak ada
perangkat yang merespon ACK.
2. Penerima tidak dapat menerima atau mengirim karena sedang mengeksekusi fungsi
lain dan tidak siap untuk memulai komunikasi dengan master.
3. Pada saat transfer data, penerima mendapatkan data atau perintah yang tidak
dimengerti oleh penerima.
4. Pada saat transfer data, penerima tidak dapat menerima lagi byte data yang
dikirimkan.
5. Penerima-master perlu memberi sinyal pengakhiran transfer data ke penerima-slave.
Gambar 2.19. menunjukkan sinyal alamat dan data. Pengalamatan dalam I2C bisa 7
bit atau 10 bit. Pengalamatan 10 bit jarang digunakan dan juga tidak dibahas di sini. Semua
perangkat (uC dan modul-modul) yang terhubung ke dalam jalur I2C yang sama dapat
dialamati sebanyak 7 bit. Ini berarti sebuah jalur I2C dengan pengalamatan 7 bit dapat
menampung 128 (2^7) perangkat. Saat mengirimkan data alamat (yang 7 bit itu), kita tetap
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
mengirim data 1 byte (8 bit). 1 bit lagi digunakan untuk menginformasikan perangkat slave
apakah master menulis (write) data ke slave atau membaca (read) data dari slave. Jika bit
tersebut 0, maka master menulis data ke slave. Jika bit tersebut 1, maka master membaca
data dari slave. Bit ini (untuk infomasi tulis/baca) merupakan LSB, sedangkan sisanya
adalah data alamat 7 bit. Berikut adalah contoh sinyal yang dimulai dengan data alamat lalu
data yang ingin ditransfer ke alamat tersebut:
Gambar 2.19. Sinyal Alamat & Data
2.13. Komunikasi SPI (Serial Peripheral Interface) [16]
Serial Peripheral Interface (SPI) merupakan salah satu mode komunikasi serial
synchrounous kecepatan tinggi. Pada arduino, serial sinkron SPI memiliki library khusus
yaitu library SPI.h. Serial sinkron adalah protokol 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 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 ditunjukkan pada gambar 2.20.
Gambar 2.20. Ilustrasi Kerja Protokol SPI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
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 controller
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 ke dalam slave. Instilah 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 (OUT), Data Out (OUT), 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 (actice low).
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 kesalahah prosedur pada
pengiriman data. Istilah pin-pin SPI untuk berbagai perangkat mungkin saja mempunyai
istilah yang berbeda dengan istilah diatas tergantung pada produsen. Gambar di bawah ini
merupakan komunikasi master-slave pada SPI.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
Gambar 2.21. Komunikasi Master-Slave 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 logila 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.
Gambar 2.22. Transfer Format Dengan CPHA=0
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
Gambar 2.23. Transfer Format Dengan CPHA=1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
BAB III
PERANCANGAN PENELITIAN
Bab ini menjelaskan tentang perancangan “Kontrol Model Pesawat Sederhana
Menggunakan Pembacaan Sensor Pada Sarung Tangan”. Yang terdiri dari blok diagram
seperti pada Gambar 3.1 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) meliputi sensor
MPU-6050 dan sensor flex yang terdapat pada bagian sarung tangan. Inputan data yang
diambil dari kedua sensor yang terdapat pada sarung tangan ini diteruskan oleh
mikrokontroler arduino (Tx) ke modul wireless (modul nR24L01) untuk dikirimkan ke
modul wireless (modul nR24L01) yang berada pada model pesawat untuk kemudian
diterima oleh mikrokontroler arduino (Rx) dan diaplikasikan pada keluarannya.
Bagian output yang dikendalikan oleh mikrokontroler arduino (Rx) meliputi servo-
servo yang berfungsi untuk menggerakan posisi model pesawat, dan motor dc yang berfungsi
sebagai baling-baling model pesawat. Diagram blok pada gambar 3.1 masih terbagi menjadi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
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 tersebut, dan pengkabelan. Perancangan perangkat lunak berisi
tentang pengaturan program dari alat yang akan dbuat. Program dari alat yang akan dbuat
pertama-tama akan dibuat 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 ini terdiri dari beberapa bagain. Bagian yang pertama adalah pembuatan
perancangan bagian model pesawat. Dan bagian kedua adalah pembuatan perancangan
bagian sarung tangan.
3.2.1. Perancangan Bagian Penggerak Model Pesawat
Pada bagian penggerak model pesawat terdapat pesawat yang terhubung ke tiang
penyangga, di dalam bagian penopang bawah akan terdapat arduino, driver motor, dan
modul nrf24L01, dibagian dalam pesawat akan terdapat servo-servo yang menggerakan
pesawat. Rencana alat pada bagian model pesawat dapat dilihat pada Gambar 3.2 dan
Gambar 3.3.
Gambar 3.2. Perancangan Penggerak Model Pesawat (Tampak Depan)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
Gambar 3.3. Perancangan Penggerak Model Pesawat (Tampak Samping)
3.2.2. Perancangan Bagian Sarung Tangan
Pada bagian sarung tangan terdapat sarung tangan yang terpasang oleh sensor MPU-
6050, sensor flex, modul nRF24L01 dan arduino nano, juga baterai yang berada pada bagian
bawah telapak tangan. Rencana alat pada bagian sarung tangan dapat dilihat pada Gambar
3.4.
Gambar 3.4. Perancangan Sarung Tangan
3.2.3. Perancangan Gerakan Yaw Pesawat
Gerakan yaw seperti yang telah dijelaskan pada bab II merupakan gerakan ke kanan
dan ke kiri nya pesawat atau gerakan menggeleng pada pesawat (panah biru). Gerakan ini
akan diatur oleh sebuah servo yang telah diatur letak pemasangannya seperti Gambar 3.5
dan Gambar 3.6.
Sensor Flex
Sensor
MPU-6050
nRF24L01
Arduino
Nano
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
Gambar 3.5. Perancangan Gerakan Yaw Pada Pesawat (Tampak Samping)
Gambar 3.6. Perancangan Gerakan Yaw Pada Pesawat (Tampak Atas)
3.2.4. Perancangan Gerakan Pitch Pesawat
Gerakan pitch seperti yang telah dijelaskan pada bab II merupakan gerakan keatas
dan kebawah nya pesawat atau gerakan menggangguk pada pesawat (panah merah). Gerakan
ini akan diatur oleh sebuah servo yang telah diatur letak pemasangannya seperti Gambar 3.7.
dan Gambar 3.8.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
Gambar 3.7. Perancangan Gerakan Pitch Pada Pesawat (Tampak Samping)
Gambar 3.8. Perancangan Gerakan Pitch Pada Pesawat (tampak atas)
3.2.5. Perancangan Gerakan Roll Pesawat
Gerakan roll seperti yang telah dijelaskan pada bab II merupakan gerakan berputar
pesawat, yaitu gerakan kemiringan kekiri atau kemiringan kekanannya pesawat (panah
hijau). Gerakan ini akan diatur oleh sebuah servo yang telah diatur letak pemasangannya
seperti Gambar 3.9. dan Gambar 3.10.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
Gambar 3.9. Perancangan Gerakan Roll Pada Pesawat (Tampak Depan)
Gambar 3.10. Perancangan Gerakan Roll Pada Pesawat (Tampak Atas)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
3.2.6. Perancangan Rangkaian 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 dihubungkan ke pin A0,
resistor 10KΩ, serta ground. 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. 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 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.
Rangkaian sensor flex dan arduino nano dapat dilihat pada Gambar 3.11.
Gambar 3.11. Rangkaian Skematik Sensor Flex Dengan Arduino Nano
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
Pada Gambar 3.11. adalah konfigurasi rangkaian untuk sensor flex yang terhubung
ke mikrokontroler Tx (Arduino Nano). Keluaran sensor flex akan masuk melalui pin A0 pada
mikrokontroler. 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.1.
Tabel 3.1. Tabel Pengukuran Nilai ADC Terhadap Posisi Sensor Flex Pada Jari
Posisi Sensor Flex
(posisi 1)
(posisi 2)
(posisi 3)
ADC (sensor flex) 640-680 700-760 770-900
Nilai-nilai ADC yang didapatkan dari hasil percobaan di atas akan digunakan
sebagai nilai pembanding dengan nilai PWM pada putaran motor agar diperoleh kesesuaian
gerakan sensor flex dan kecepatan putaran motor. Apabila sensor flex dalam keadaan datar
dan tidak ditekuk maka memiliki nilai ADC ±640 yang berarti motor dalam kedaan diam
atau tidak berputar. Apabila sensor flex dalam keadaan agak ditekuk dan memiliki nilai ADC
±700 maka motor akan berputar dengan kecepatan yang tidak terlalu kencang. Dan apabila
sensor flex dalam keadaan ditekuk dan memiliki nilai ADC ±900 maka motor akan berputar
dengan kecepatan maksimal.
3.2.7. Perancangan Sensor MPU-6050
Sensor MPU-6050 pada perancangan ini digunakan untuk pendeteksi gerakan dari
tangan yang akan menentukan gerakan pesawat apakah akan bergerak yaw, pitch atau roll.
Sensor MPU-6050 ini memiliki 3 keluaran yang sesuai dengan sumbunya yaitu sumbu X,
sumbu Y dan sumbu Z. Nilai keluaran yang dihasilkan dari sensor MPU-6050 akan diproses
oleh mikrokontroler Tx lalu dikonversi menjadi nilai sudut gerakan servo yaw, servo pitch
dan servo roll yang kemudian akan kirim ke mikrokontroler Rx dan dikeluarkan menjadi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
gerakan servo yaw, servo pitch dan servo roll. Rangkaian skematik sensor MPU-6050
dengan arduino nano dapat dilihat pada Gambar 3.12.
Gambar 3.12. Rangkaian Skematik Sensor MPU-6050 Dengan Arduino Nano
Tabel 3.2. Tabel Konfigurasi Hubungan Pin Arduino Nano Dengan Sensor MPU-6050
No. Pin Arduino Nano Pin Sensor MPU-6050
1. 5 Volt VCC
2. GND GND
3. A4 SDA
4. A5 SCL
3.2.8. Perancangan Rangkaian Motor DC
Motor dc pada perancangan ini digunakan sebagai keluaran dari sensor flex.
Kecepatan motor dc akan diatur keluarannya sesuai dengan kelengkungan sensor flex. Motor
dc dihubungkan ke Driver motor L298N yang berfungsi untuk mengatur kecepatan dan arah
putaran motor dc. Driver motor L298N disuplai oleh baterai 9 Volt.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
Gambar 3.13. Rangkaian Skematik Motor DC Dengan Arduino Uno & Driver Motor
Tabel 3.3. Tabel Konfigurasi Hubungan Pin Arduino Uno Dengan Driver Motor
No. Pin Arduino Uno Pin Driver Motor
1. 5 Volt 5 Volt
2. D6 Enable
3. D4 IN1
4. D2 IN2
3.2.9. Perancangan Rangkaian Servo
Motor servo pada perancangan ini digunakan sebagai keluaran dari sensor MPU-
6050. Perputaran servo 1, servo 2, dan servo 3 akan diatur sesuai dengan gerakan dari sensor
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
MPU-6050. Setiap motor servo dihubungkan ke arduino uno yang konfigurasi pinnya sesuai
dengan Tabel 3.4. dibawah.
Gambar 3.14. Rangkaian Skematik Motor Servo Dengan Arduino Uno
Tabel 3.4. Tabel Konfigurasi Hubungan Pin Arduino Uno Dengan Motor Servo
No. Pin Arduino Uno Pin Servo Motor
1. 5 Volt 5 Volt
2. GND GND
3. D9 Servo 1
4. D5 Servo 2
5. D3 Servo 3
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
3.2.10. 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, yaitu pada arduino uno dan arduino
nano. Konfigurasi pemasangan pin modul nRF24L01 pada arduino uno dapat dilihat pada
Tabel 3.5. Sedangkan konfigurasi pemasangan pin modul nRF24L01 pada arduino nano
dapat dilihat pada Tabel 3.6.
Gambar 3.15. Rangkaian Skematik Modul nRF24L01 Dengan Arduino Uno (Tx)
Tabel 3.5. Tabel Konfigurasi Hubungan Pin Arduino Uno (Tx) Dengan nRF24L01
No. Pin Arduino Uno Pin Modul nRF24L01
1. 3,3 Volt VCC
2. GND GND
3. 7 CE
4. 8 CS
5. 13 SCK
6. 11 MOSI
7. 12 MISO
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
Gambar 3.16. Rangkaian Skematik Modul nRF24L01 Dengan Arduino Nano (Rx)
Tabel 3.6. Tabel Konfigurasi Hubungan Pin Arduino Nano (Rx) Dengan 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
3.3. Perancangan Perangkat Lunak
Dalam perancangan perangkat lunak ini dijelaskan bagaimana flowchart atau
diagram alir dari keseluruhan program pengendali yang akan dibuat.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
Gambar 3.17. Flowchart Keseluruhan Program Bagian Pengirim & Bagian Penerima
Instrument akan menerima masukkan dari sensor MPU-6050 dan sensor flex yang
kemudian akan dibaca dan diproses sehingga diperoleh data sensor MPU-6050 dan data
sensor flex. Data-data dari sensor MPU-6050 akan dihitung terlebih dahulu rata-rata error
yang terjadi. Rata-rata error tersebut kemudian digunakan dalam perhitungan data
accelerometer dan data gyro untuk mengurangi persen error yang terjadi pada sensor MPU-
6050. Setelah data-data MPU-6050 dikurangkan dengan rata-rata error yang terjadi,
dihitung nilai roll, pitch, dan yaw. Nilai roll, pitch, dan yaw tersebut kemudian dikonversi
menjadi nilai sudut servo roll, pitch, dan yaw. Sedangkan masukkan dari sensor flex
mendapatkan data berupa nilai adc sensor flex. Nilai adc sensor flex tersebut kemudian di
konversikan menjadi nilai PWM kecepatan motor dc. Data-data dari kedua sensor ini (sensor
flex dan sensor MPU-6050) ini kemudian akan dikirimkan oleh mikrokontroler transmitter
ke mikrokontroler receiver. Data sensor MPU-6050 yang dikirim berupa data sudut servo
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
roll, servo pitch, dan servo yaw. Data sensor flex yang dikirim berupa data PWM kecepatan
motor dc. Mikrokontroler receiver kemudian akan menerima data-data dari mikrokontroler
transmitter yang kemudian akan dproses oleh mikrokontroler receiver. Mikrokontroler
receiver akan memproses data-data tersebut, data dari sensor MPU-6050 dan data dari sensor
flex akan dikeluarkan ke output. Keluaran dari instrumen berupa gerakan pada motor servo
roll, motor servo pitch, dan motor servo yaw yang telah sesuai dengan gerakan pada sensor
MPU-6050, serta kecepatan putaran motor dc yang telah sesuai dengan gerakan
kelengkungan sensor flex.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
45
BAB IV
HASIL DAN PEMBAHASAN
Pada bab ini akan dijelaskan implementasi perancangan penelitian dan hasil uji coba
alat beserta pembahasannya untuk mengetahui kesesuaian antara perancangan dengan
penelitian. Hasil dan pembahasan meliputi data hasil pengujian nilai keluaran sensor flex
terhadap kecepatan motor dc, data hasil pengujian nilai keluaran sensor MPU-6050 terhadap
servo-servo yang berada pada model pesawat, dan data hasil pengujian jarak komunikasi
antar mikrokontroler.
4.1. Sistem Perangkat Keras
4.1.1. Implementasi Alat
Gambar 4.1. Bentuk Fisik Bagian Model Pesawat
Gambar 4.1 menunjukkan bentuk fisik dari bagian model pesawat atau bagian
penerima dari alat yang sudah dibuat. Bagian model pesawat ini memiliki dua bagian yaitu
bagian kotak tiang penyangga dan bagian pesawat. Bagian kotak penyangga pesawat
memiliki ukuran 25cm x 20cm x 7,5cm (panjang x lebar x tinggi) dengan tinggi penyangga
30cm dengan lebar 4cm x 4cm (panjang x lebar), dan bagian
Recommended