• Tidak ada hasil yang ditemukan

KONTROL MODEL PESAWAT SEDERHANA MENGGUNAKAN PEMBACAAN SENSOR PADA SARUNG TANGAN

N/A
N/A
Protected

Academic year: 2021

Membagikan "KONTROL MODEL PESAWAT SEDERHANA MENGGUNAKAN PEMBACAAN SENSOR PADA SARUNG TANGAN"

Copied!
102
0
0

Teks penuh

(1)

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

(2)

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

(3)
(4)
(5)
(6)

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

(7)
(8)

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.

(9)

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.

(10)

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 Teknik Elektro angkatan 2015, teman-teman grup Offline, Horsemen, EndTA serta teman-teman-teman-teman semasa sekolah.

(11)
(12)

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

(13)

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

(14)

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

(15)

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

(16)

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

(17)

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

(18)

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

(19)

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.

(20)

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-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.

(21)

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.

(22)

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.

(23)

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

(24)

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.

(25)

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].

(26)

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

(27)

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 2

10 (2.2)

Keterangan:

Vsensorflex = Nilai tegangan sensor flex (Volt)

Vcc = Tegangan masukkan mikrokontroler (Volt) Rflex = Nilai Resistansi sensor flex (Ω)

(28)

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

(29)

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

(30)

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:

(31)

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.

(32)

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.

(33)

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]

(34)

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.

(35)

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

(36)

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

(37)

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:

(38)

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.

(39)

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.

(40)

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

(41)

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.

(42)

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

(43)

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.

(44)

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.

(45)

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.

(46)
(47)

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

(48)

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.

(49)

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

(50)

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.

(51)

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.

(52)

Gambar 3.9. Perancangan Gerakan Roll Pada Pesawat (Tampak Depan)

(53)

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.

(54)

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

(55)

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.

(56)

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

Gambar

Gambar 1.1. Perancangan Blok Diagram
Gambar 2.2. Arduino Nano
Gambar 2.3. Konfigurasi Pin Arduino Uno [5]
Tabel 2.1. Konfigurasi Pin Arduino Uno [5].
+7

Referensi

Dokumen terkait

9.3 Sekiranya berlaku apa-apa gangguan atau sebarang tuntutan diambil ke atas UiTM oleh Pemberi Sewa atau mana-mana pihak lain yang mempunyai kepentingan ke

GOVERNANCE DAN PENGUNGKAPAN TANGGUNG JAWAB SOSIAL TERHADAP PROFITABILITAS PADA PERUSAHAAN YANG TERDAFTAR DI BURSA EFEK INDONESIA PERIODE 2008- 2012” adalah benar hasil karya

Apabila kualitas air dibandingkan terhadap baku mutu air berdasarkan PP No.82 tahun 2001 yang disajikan pada Tabel 6 diperoleh bahwa kualitas air Sungai

Hal ini berbeda dengan Tafsir Salman, yang mengutip dari Imam Fakhruddin menjelaskan bahwa Fajar digunakan sebagai sumpah oleh Allah swt, karena menunjukkan bahwa waktu malam

Dengan keberhasilan yang dilakukan oleh beberapa peneliti dalam meramalkan model hidrologi menggunakan metode ANFIS, maka dalam penelitian ini akan menguji tingkat

Dengan diberikannya hak tanggungan dihadapan seorang PPAT oleh para pihak-pihak yang memperjanjikannya, hanya baru dalam taraf memenuhi syarat- syarat spesialitas, yaitu

[r]

Dalam observasi ini saya ingin melihat kegiatan para pekerja UKM sapu lidi dalam mengerjakan sapu lidi setiap harinya agar bisa berkomunikasi dan mendapatkan data dari