• Tidak ada hasil yang ditemukan

Pengendali lengan robot dengan gamepad.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Pengendali lengan robot dengan gamepad."

Copied!
129
0
0

Teks penuh

(1)

viii

INTISARI

Perkembangan teknologi saat ini sangat pesat salah satunya teknologi robotika. Robot –robot diciptakan saat ini memiliki kegunaan beragam yang berfungsi untuk membantu pekerjaan manusia. Penelitian ini bertujuan membuat pengendali lengan robot 3 DOF dengan

USB Gamepad. Kontroler yang digunakan adalah ATmega328 yang menggunakan bahasa arduino. Komunikasi antara mikrokontroler dan USB gamepad menggunakan USB host shield. Lengan robot dapat bergerak menggunakan motor servo sebagai aktuator dan dapat bergerak bebas berdasarkan tiga axis yakni base, shoulder, elbow, dan sebagai end

(2)

ix

ABSTRACT

The technology developments today's are very massive for example, robotics. Today robots have a variety of uses that help human work. This research aims to make the 3 DOF robotic arm controller with a USB gamepad. Atmega328 is the controller with arduino based language. Communication between microcontroller and USB gamepad use USB host shield. The robotic arm moves using servo motors as actuators and also can moves freely by 3 axes, base, shoulder, elbow, and gripper for the end effector. This project using open loop sistem control that still manual control from user. The result of this research is a robotic arm that can move with precision accuracy 5˚ using gamepad control. The robotic arm has an average error of 5%.

(3)

TUGAS AKHIR

PENGENDALI LENGAN ROBOT DENGAN

GAMEPAD

Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik

Program Studi Teknik Elektro

Oleh:

BASILIUS KRISTIAWAN WICAKSONO NIM : 135114035

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(4)

FINAL PROJECT

ROBOTIC ARM CONTROLLER WITH GAMEPAD

In partial fulfilment of requirements for the degree of Sarjana Teknik

In Electrical Engineering Study Program

BASILIUS KRISTIAWAN WICAKSONO NIM : 135114035

ELECTRICAL ENGINEERING STUDY PROGRAM

ELECTRICAL ENGINEERING DEPARTMENT

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

(5)
(6)
(7)
(8)

vi

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

MOTTO :

"Pendidikan merupakan perlengkapan paling baik untuk hari tua."

(Aristoteles)

Dengan ini kupersembahkan karyaku ini untuk ...

Tuhan Yesus Kristus Pembimbingku yang setia,

Negaraku Indonesia yang tercinta,

Keluargaku tercinta,

Teman-teman seperjuangan,

Dan semua orang yang mengasihiku

Terima Kasih untuk

(9)
(10)

viii

INTISARI

Perkembangan teknologi saat ini sangat pesat salah satunya teknologi robotika. Robot –robot diciptakan saat ini memiliki kegunaan beragam yang berfungsi untuk membantu pekerjaan manusia. Penelitian ini bertujuan membuat pengendali lengan robot 3 DOF dengan

USB Gamepad. Kontroler yang digunakan adalah ATmega328 yang menggunakan bahasa arduino. Komunikasi antara mikrokontroler dan USB gamepad menggunakan USB host shield. Lengan robot dapat bergerak menggunakan motor servo sebagai aktuator dan dapat bergerak bebas berdasarkan tiga axis yakni base, shoulder, elbow, dan sebagai end

(11)

ix

ABSTRACT

The technology developments today's are very massive for example, robotics. Today robots have a variety of uses that help human work. This research aims to make the 3 DOF robotic arm controller with a USB gamepad. Atmega328 is the controller with arduino based language. Communication between microcontroller and USB gamepad use USB host shield. The robotic arm moves using servo motors as actuators and also can moves freely by 3 axes, base, shoulder, elbow, and gripper for the end effector. This project using open loop sistem control that still manual control from user. The result of this research is a robotic arm that can move with precision accuracy 5˚ using gamepad control. The robotic arm has an average error of 5%.

(12)
(13)

xi

DAFTAR ISI

HALAMAN JUDUL (Bahasa Indonesia) ... i

HALAMAN JUDUL (Bahasa Inggris) ... ii

HALAMAN PERSETUJUAN... iii

HALAMAN PENGESAHAN ... iv

PERNYATAAN KEASLIAN KARYA ... v

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP ... vi

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTIANGAN AKADEMIS ... vii

INTISARI ... viii

ABSTRACT ... ix

KATA PENGANTAR ... x

DAFTAR ISI ... xi

DAFTAR GAMBAR ... xiii

DAFTAR TABEL ... xvi

DAFTAR PERSAMAAN ... xvii

DAFTAR LAMPIRAN ... xviii

BAB I PENDAHULUAN 1.1. Latar Belakang ... 1

1.2. Tujuan ... 2

1.3.Manfaat ... 2

1.4. Batasan Masalah ... 3

1.5. Metodologi Penelitian ... 3

BAB II DASAR TEORI 2.1. Motor Servo ... 5

2.1.1. Prinsip Kerja ... 5

2.1.2. Jenis Motor Servo ... 7

2.2. Torsi ... 8

2.3. Sistem Kontroler Lengan Robot ... 9

2.4. Gamepad ... 10

2.5. USB Host Shield ... 11

2.5.1. Operasi SPI Bus ... 12

2.5.2. Komunikasi USB ... 15

2.6. Mikrokontroler Atmega328P ... 19

2.6.1. Fitur ... 21

2.6.2. Konfigurasi Pin ... 22

2.7. FTDI FT232RL ... 25

2.8. Arduino ... 27

(14)

xii

2.10. Kerangka Lengan Robot ... 30

2.10.1.Link Penggerak Menggunakan Prinsip Tuas ... 31

2.10.2.Jangkauan Lengan Robot ... 32

BAB III PERANCANGAN PENELITIAN 3.1. Perancangan Sistem ... 34

3.1.1. Perangcangan Fungsi Tombol Gamepad ... 35

3.2. Perancangan Hardware ... 35

3.2.1. Perancangan Rangkaian Sistem Minimum Mikrokontroler Atmega328P ... 35

3.2.2. Perancangan Kerangka Robot ... 39

3.2.3. Torsi Motor ... 43

3.2.4. Gerak Lengan Robot ... 45

3.2.5. Jangkauan Lengan Robot ... 47

3.3. Perancangan Software ... 51

3.3.1. Flowchart Utama ... 51

BAB IV HASIL DAN PEMBAHASAN 4.1. Hasil Perangcangan Perangkat Keras ... 55

4.2. Hasil Pengujian Perangkat Keras ... 58

4.2.1. Pengujikan Ketepatan Sudut Lengan Robot ... 58

4.2.2. Pengujian Kinematika Lengan Robot ... 66

4.2.3. Analisa Pergerakan Link ... 70

4.2.4. Pengujian Repeatability Gerakan Lengan Robot ... 71

4.3. Analisa Perangkat Lunak ... 73

4.3.1. Inisialisasi ... 73

4.3.2. Pembacaan Input dan Perintah ke Output ... 75

4.3.3. Kecepatan Motor ... 76

4.3.4. Pengiriman Data ke User melalui Serial Monitor ... 76

BAB V KESIMPULAN DAN SARAN 5.1. Kesimpulan ... 78

5.2. Saran ... 78

DAFTAR PUSTAKA ... 79

(15)

xiii

DAFTAR GAMBAR

Halaman

Gambar 1.1 Diagram Alur Kerja Sistem... 3

Gambar 2.1 Gelombang Sinyal PWM [29]... 6

Gambar 2.2 Prinsip Kerja Motor Servo [29] ... 6

Gambar 2.3 Motor Servo Standar [30] ... 7

Gambar 2.4 Mikro Servo [31] ... 8

Gambar 2.5 Kontrol Open Loop dalam Sistem Lengan Robot ... 9

Gambar 2.6 Konfigurasi Tombol Gamepad [19] ... 10

Gambar 2.7 Konfigurasi Board USB Host Shield [5] ... 11

Gambar 2.8 Pengiriman Data SPI [16] ... 13

Gambar 2.9 SPI Bus Menggunakan Slave-select [16] ... 14

Gambar 2.10 Data transmisi SPI bus [15] ... 15

Gambar 2.11 Konfugurasi Kabel USB [3] ... 15

Gambar 2.12 Detached State [3] ... 15

Gambar 2.13 Attached State [3] ... 16

Gambar 2.14 Idle State [20] ... 16

Gambar 2.15 Contoh Pengiriman Data USB [18] ... 17

Gambar 2.16 Konfigurasi Pin Atmega328P dengan Fungsi Pada Arduino [7] ... 20

Gambar 2.17 Diagram Blok ATmega328 [4] ... 21

Gambar 2.18 FTDI Basic Breakout ... 25

Gambar 2.19 Tampilan IDE Arduino ... 28

Gambar 2.20 Sudut-Sudut yang Dimiliki oleh Garis Parallel ... 30

Gambar 2.21 Lengan Robot 3 DOF [26] ... 31

Gambar 2.22 Prinsip kerja tuas [28] ... 32

Gambar 2.23 Konfigurasi Perhitungan Jangkauan Lengan Robot ... 33

Gambar 3.1 Diagram Blok Perancangan ... 34

Gambar 3.2 Rangkaian Reset Mikrokontroler ... 36

Gambar 3.3 Rangkaian Osilator Mikrokontroler ... 36

Gambar 3.4 Rangkaian Minimum Sistem dan Interface-nya ... 37

Gambar 3.5 Koneksi Antara USB Host Shield Dan Mikrokontroler ... 38

Gambar 3.6 Desain Griper [26] ... 39

(16)

xiv

Gambar 3.8 Link Lengan Robot Tampak Kiri [14]... 40

Gambar 3.9 Sudut Pergerakan Lengan Robot [14] ... 41

Gambar 3.9 Sudut Pergerakan Lengan Robot [14] ... 41

Gambar 3.11 Lengan Robot Tampak Samping Kanan (Kiri) Dan Tampak Samping Kiri (Kanan) [14] ... 42

Gambar 3.12 Lengan Robot Tampak Atas (Kiri) Dan Tampak Bawah (Kanan) [14] ... 42

Gambar 3.13 Lengan Robot Tampilan 3D [14] ... 42

Gambar 3.14 Dimensi Lengan dan Link Lengan Robot ... 45

Gambar 3.15 Sudut-Sudut pada Lengan Robot ... 46

Gambar 3.16 Arah Pergerakan Semua Sendi pada Lengan Robot ... 47

Gambar 3.17 Konfigurasi Perhitungan Jangkauan Lengan Robot ... 47

Gambar 3.18 Posisi Maksimal Vertikal ... 48

Gambar 3.19 Posisi Maksimal Horisontal ... 48

Gambar 3.20 Pergerakan Sudut Griper [26] ... 49

Gambar 3.21 Pergerakan Sudut Elbow ... 50

Gambar 3.22 Pergerakan Sudut Base ... 51

Gambar 3.23 Flowchart Utama ... 52

Gambar 3.24 Subsistem dari Pengolahan Data ... 53

Gambar 3.25 Pembacaan Alamat Tombol Gamepad ... 54

Gambar 3.26 Penomoran USB Device Berdasarkan Tombol-tombolnya ... 54

Gambar 4.1 Keseluruhan Sistem Pengendali Lengan Robot dengan Gamepad ... 55

Gambar 4.2 Mekanik Lengan Robot ... 56

Gambar 4.3 Letak Motor pada Lengan Robot ... 56

Gambar 4.4 Minimum Sistem Atmega328 ... 57

Gambar 4.5 Minimum Sistem dan USB host shield ... 57

Gambar 4.6 Letak Rangkaian Elektrik pada Lengan Robot ... 57

Gambar 4.7 Grafik Perbandingan Sudut Base ... 60

Gambar 4.8 Grafik Sudut Shoulder ... 63

Gambar 4.9 Grafik Perbandiang Sudut Input dan Sudut Aktual Pada Sendi Elbow ... 65

Gambar 4.10 Sumbu X Dan Y pada Lengan Robot ... 67

Gambar 4.11 Ruang Kerja Lengan Robot dalam X dan Y ... 69

Gambar 4.12 Nama Sudut Link Segi 4 pada Lengan Robot ... 70

(17)

xv

Gambar 4.14 Inisalisasi Variabel dan Input/Output 1 ... 74

Gambar 4.15 Inisalisasi Variabel dan Input/Output 2 ... 74

Gambar 4.16 Input dan Output pada Program ... 75

Gambar 4.17 Delay pada Void Loop ... 76

Gambar 4.18 Inisialisasi Pembacaan Serial ... 76

Gambar 4.19 Pembacaan SerialInput dan Output ... 76

Gambar 4.20 Tampilan Serial Monitor sebagai User Interface ... 77

(18)

xvi

DAFTAR TABEL

Halaman

Tabel 2.1 Tabel Konfigurasi Pin Servo ... 8

Tabel 2.2 State pada Koneksi USB [3] ... 16

Tabel 2.2 (Lanjutan) State pada Koneksi USB [3] ... 17

Tabel 2.3 Data Hex dari Gamepad ... 17

Tabel 2.3 (Lanjutan) Data Hex dari Gamepad ... 18

Tabel 2.4 Paket Data Gamepad [17] ... 19

Tabel 2.5 Fungsi Khusus Port B [13] ... 22

Tabel 2.5 (Lanjutan) Fungsi Khusus Port B [13] ... 23

Tabel 2.6 Fungsi Khusus Port C [13] ... 23

Tabel 2.7 USB Interface Group [9] ... 26

Tabel 2.8 Power dan Ground Group [9] ... 26

Tabel 2.9 Miscellanous Signal Group [9] ... 26

Tabel 2.10 UART Interface dan CBUS Group [9] ... 26

Tabel 2.10 (Lanjutan) UART Interface dan CBUS Group [9] ... 27

Tabel 2.11 Keterangan Tombol Pada Tampilan IDE Arduino [12] ... 29

Tabel 3.1 Fungsi Tombol Gamepad ... 35

Tabel 3.2 Port pada Mikrokontroler ... 38

Tabel 4.1 Sudut Sendi Base ... 59

Tabel 4.1 (Lanjutan) Sudut Sendi Base ... 60

Tabel 4.2 Pengujian Sudut Shoulder ... 61

Tabel 4.2 (Lanjutan) Pengujian Sudut Shoulder ... 62

Tabel 4.3 Tabel Pengambilan Data Elbow ... 64

Tabel 4.4 Tabel Data Gripper ... 66

Tabel 4.5 Data Forward Kinematik Lengan Robot ... 67

Tabel 4.5 (Lanjutan) Data Forward Kinematik Lengan Robot ... 68

Tabel 4.6 Sudut Link Segi 4 Lengan Robot ... 70

Tabel 4.7 Analisa Sudut Link Segi 4 Lengan Robot ... 71

Tabel 4.8 Repeatability Gerak Sendi Base ... 71

Tabel 4.9 Repeatability Gerak Sendi Shoulder ... 72

Tabel 4.10 Repeatability Gerak Sendi Elbow ... 72

(19)

xvii

DAFTAR PERSAMAAN

Halaman

Persamaan 2.1 ... 6

Persamaan 2.2 ... 6

Persamaan 2.3 ... 8

Persamaan 2.4 ... 8

Persamaan 2.5 ... 8

Persamaan 2.6 ... 8

Persamaan 2.7 ... 29

Persamaan 2.8 ... 30

Persamaan 2.9 ... 32

Persamaan 2.10 ... 33

Persamaan 2.11 ... 33

Persamaan 2.12 ... 33

Persamaan 2.13 ... 33

(20)

xviii

DAFTAR LAMPIRAN

(21)

1

BAB I

PENDAHULUAN

1.1.

Latar Belakang

Kata robot yang berasal dari bahasa Czech, robota, yang berarti pekerja, mulai menjadi populer ketika seorang penulis berbangsa Czech (Ceko), Karl Capek, membuat pertunjukan dari lakon komedi yang ditulisnya pada tahun 1921 yang berjudul RUR (Rossum’s Universal Robot). Ia bercerita tentang mesin yang menyerupai manusia, tapi mampu bekerja terus-menerus tanpa lelah.[1]

Kehadiran robot dalam kehidupan manusia makin hari disadari makin banyak manfaatnya. Robotik tidak lagi dipandang sebagai ilmu yang berkembang hanya dalam konteks teknologi (fisik) saja, namun semakin hari semakin banyak masalah yang berkaitan dengan lingkungan hidup manusia yang perlu juga diambil perhatian.[1] Dengan adanya teknologi robotik , manusia menggantikan peralatan-peralatan konvensional dengan peralatan canggih. Istilah robot hampir tak dapat dipisahkan dengan dunia industri. Dalam dunia industri, robot merupakan alat yang dapat dugunakan sebagai alat bantu manusia yang memiliki beberapa kelebihan. Kelebihan tersebut salah satunya untuk alasan keamanan, ada industri yang tidak memungkinkan ataupun berbahaya bagi manusia. Seperti laboratorium riset kimia yang merupakan contoh tempat yang kadang tidak memungkinkan manusia berada pada tempat itu karena bahaya gas beracun atau radioaktif. Alasan lainya adalah karena robot dapat bekerja secara presesi, terus-menerus, dan konsisten pada pergerakannya, tidak seperti manusia yang memiliki batasan fisik maupun

human error. Salah satu produk robot yakni lengan robot. Lengan robot merupakan alat yang dibuat menyerupai lengan manusia, yang dapat digunakan untuk mengerjakan berbagai macam tugas.

(22)

Penggunaan komunikasi USB dipilih dibandingkan dengan langsung menyambungkan gamepad dan mikrokontroler adalah karena komunikasi USB sudah menjadi standard pada kebanyakan alat teknologi sekarang ini. Komunikasi USB

merupakan salah satu teknologi yang harus dipelajari untuk mengikuti standard perkembangan dunia teknologi.

Penulis hendak membuat pengendali lengan robot yang sederhana sehingga ketika orang ingin belajar cara gerak dan pengendalian lengan robot dapat lebih cepat memahaminya. Belajar cara gerak dari lengan robot 3 sendi yang dikendalikan satu-persatu axis melalui gamepad dan selanjutnya dapat mempelajari cara kerja motor servo, gamepad

dan cara menghubungkannya.

1.2.

Tujuan

Tujuan dari penelitian ini adalah untuk menghasilkan pengendali lengan robot 3 sendi menggunakan gamepad berbasis mikrokontroler arduino.

1.3.

Manfaat

Untuk masyarakat umum:

1) Memperoleh lengan robot yang multi purpose, dimana fungsi dan gerakan dari lengan robot dapat dikendalikan sesuai kehendak operator lengan robot, tidak terbatas oleh program tertentu saja.

2) Sebagai alat bermain sekaligus belajar, karena menggunakan interface gamepad

yang sudah familiar dikenal masyarakat umum. Untuk pendidikan:

a) Sebagai sarana pembelajaran lengan robot 3 DOF (cara gerak dan pengendalinya). b) Sebagai sarana pembelajaran motor servo, minimum sistem dan desain robotik. c) Sebagai sarana pembelajaran bahasa pemograman mikrokontroler arduino, yang

(23)

1.4.

Batasan Masalah

Batasan masalah pada penelitian lengan robot ini adalah:

a) Desain lengan robot menggunakan desain open source yang dipublikasi secara gratis dan legal.

b) Menggunakan mikrokontroler Atmega328P berbasis Arduino. c) Menggunakan motor servo sebagai aktuator.

d) Gamepad sebagai interface pengendalinya.

e) Input gamepad ke mikrokontroler dengan komunikasi USB kemudian dikonversi oleh MAX3421E (USB Host Shield) sehingga bisa dibaca oleh mikrokontroler melalui SPI bus (Serial Peripheral Interface).

f) Lengan robot dapat bergerak pada sumbu X, Y, dan Z.

g) Lengan robot memiliki 3 derajat kebebasan (Degree of Freedom) dan Gripper

sebagai end effector.

1.5.

Metodologi Penelitian

Metode penelitian yang digunakan dalam penyusunan tugas akhir ini adalah:

a) Study literatur berupa pengumpulan referensi dari buku-buku maupun dari internet berupa jurnal-jurnal dan artikel-artikel.

b) Studi kasus terhadap alat yang telah dibuat sebelumnya. Tahap ini dilakukan guna memahami prinsip kerja dari alat yang telah dibuat sebelumnya.

c) Perancangan sistem hardware dan software.

d) Pembuatan sistem hardware dan software. Alat akan bekerja berdasarkan pada kontrol dari gamepad seperti yang diperlihatkan pada Gambar 1.1.

(24)

e) Proses pengambilan data dilakukan dengan cara mengukur secara real daerah jangkauan kerja lengan robot dan ketepatan sudut yang dibuat.

(25)

5

BAB II

DASAR TEORI

2.1.

Motor Servo

Dalam kamus Oxford istilah “servo” diartikan sebagai “a mechanism that controls a larger mechanism”yang jika diartikan “sebuah mekanisme yang mengontrol mekanisme

yang lebih besar”. Motor servo merupakan motor DC yang mempunyai gerak sudut yang presisi. Motor ini sudah dilengkapi dengan sistem kontrol. Pada aplikasinya motor servo

sering digunakan sebagai kontrol loop tertutup, sehingga dapat menangani perubahan posisi secara tepat dan akurat begitu juga dengan pengaturan kecepatan dan percepatan.[1] Motor servo merupakan perangkat yang terdiri dari motor DC, serangkaian gear, rangkaian kontrol dan potensiometer. Serangkaian gear yang melekat pada poros motor DC akan memperlambat putaran poros dan meningkatkan torsi motor servo, sedangkan potensiometer dengan perubahan resistansinya saat motor berputar berfungsi sebagai penentu batas posisi putaran poros motor servo. Dalam penggunaannya motor servo

dikehendaki handal beroperasi dalam lingkup torsi yang berubah-ubah.

2.1.1.

Prinsip Kerja

(26)

Gambar 2.1 Gelombang Sinyal PWM[29]

Gambar 2.2 Prinsip Kerja Motor Servo[29]

Periode adalah waktu yang dibutuhkan untuk membentuk satu buah gelombang kotak. Rumus periode adalah sebagai berikut:[21]

T = ...(2.1)

Frekuensi dapat didefenisikan sebagai banyaknya gelombang kotak yang terbentuk dalam satu detik.[21]

Duty cycle adalah presentase sinyal high dalam satu periode gelombang. Duty cycle dapat dirumuskan sebagai berikut:[22]

Duty Cycle =

x 100% ...(2.2)

(27)

atau mengubah posisi tersebut, maka motor servo akan mencoba menahan atau melawan dengan besarnya kekuatan torsi yang dimilikinya (rating torsi servo). Namun motor servo

tidak akan mempertahankan posisinya untuk selamanya, sinyal PWM harus diulang setiap 20 ms untuk menginstruksikan agar posisi poros motor servo tetap bertahan pada posisinya.

2.1.2.

Jenis Motor Servo

Adapun dua jenis dari motor servo adalah: 1. Motor Servo Standar

Motor servo jenis ini hanya mampu bergerak dua arah (CW dan CCW) dengan defleksi masing-masing sudut mencapai 90° sehingga total defleksi sudut dari kanan – tengah – kiri adalah 180°.[23]

2. Motor ServoContinue

Motor servo jenis ini mampu bergerak dua arah (CW dan CCW) tanpa batasan defleksi sudut putar (dapat berputar secara berkelanjutan) dengan kata lain dapat berputar 360°.[24]

Gambar 2.3 Motor Servo Standar[30]

Gambar 2.3 adalah motor servo standar yang dijual di pasaran. Adapun motor servo

yang memiliki ukuran yang lebih kecil yakni mikro servo. Mikro servo merupakan motor

servo seperti motor servo standar lainnya hanya saja memiliki ukuran yang jaul lebih kecil. Mikro servo ditunjukkan pada gambar 2.4. Untuk konfigurasi Pin servo hampir semua

(28)

Gambar 2.4 Mikro Servo[31] Tabel 2.1 Tabel Konfigurasi Pin Servo

Pin Keterangan

Orange PWM

Red VCC

Brown GROUND

2.2.

Torsi

Torsi merupakan gaya pada gerak translasi. Torsi menunjukkan kemampuan sebuah gaya untuk membuat benda melakukan gerak rotasi[32]. Perhitungan torsi tergantung pada panjang dari setiap link lengan robot dan berat beban yang diterima oleh lengan robot tersebut[25]. Perhitungan torsi dapat dihitung dengan menggunakan persamaan di bawah ini:

τ = F. r ...(2.3)

w = m . g dimana, F = w ...(2.4) F = m . g ...(2.5) τ = m . g . r ...(2.6)

keterangan: τ = torsi (kg.cm)

(29)

R = jari-jari (cm)

W = gaya berat (N, kg.m/ ) m = massa benda (kg)

g = percepatan gravitasi (m/ )

Perhitungan torsi pada motor ini nantinya akan berguna untuk perancangan lengan robot yang berkaitan dengan pemilihan komponen motor aktuator. Jenis dan dan spesifikasi motor servo berbeda-beda tergantung model dan merek motor servo itu. Dengan mengetahui torsi yang akan digunakan nanti maka memudahkan untuk menentukan spesifikasi yang cocok untuk digunakan dalam lengan robot.

2.3.

Sistem Kontroler Lengan Robot

Sistem kontrol yang akan digunakan pada lengan robot adalah kontrol loop terbuka. Diagram kontrol loop terbuka sistem robot dapat dinyatakan dalam Gambar 2.5 berikut ini.

Gambar 2.5 Kontrol Open Loop dalam Sistem Lengan Robot

Kontrol loop terbuka atau umpan maju (feedforward control) dapat dinyatakan sebagai sistem kontrol yang outputnya tidak diperhitungkan ulang oleh kontroler. Keadaan apakah robot benar-benar telah mencapai target seperti yang dikehendaki sesuai referensi, adalah tidak dapat mempengaruhi kinerja kontroler.[1] Kontrol ini sesuai untuk sistem operasi robot yang memiliki aktuator yang beroperasi berdasarkan umpan logika berbasis konfigurasi langkah sesuai urutan, seperti motor servo yang digunakan dalam tugas akhir ini. Motor servo tidak perlu dipasangi sensor pada porosnya untuk mengetahui posisi akhir. Jika dalam keadaan berfungsi baik dan tidak ada masalah beban maka motor servo akan berputar sesuai dengan perintah kontroler dan mencapai posisi target dengan tepat.

(30)

Dengan membagi menjadi tiga bagian maka kita dapat lebih mudah melakukan analisa tentang bagaimana kontroler memperoleh input dan mengirim ouput ke motor servo.

2.4.

Gamepad

Gamepad digunakan sebagai interface pengendali lengan robot. Gamepad adalah pengendali game seperti kebanyakan yang memiliki input analog dan digital. Nilai lebih dari gamepad ini adalah karena hampir semua tombol, baik analog maupun digital dapat dibaca oleh mikrokontroler. Kelebihan gamepad ini juga karena kemampuan komunikasi melalui USB dan Bluetooth.

Gamepad memiliki 16 tombol digital dan 4 analog, pada Gambar 2.6 ditunjukkan lebih detil letak tombolnya. Fungsi dari tombol-tombol tersebut secara umum adalah:

1. Directional button merupakan tombol digital (empat buah tombol) yang biasanya digunakan untuk sebagai arah.

2. Tombol digital L1, R1, Cross, Square, Circle, Triangle belum memiliki fungsi yang spesifik, tergantung aplikasi yang digunakan.

3. Tombol digital yang berada ditengah (terdiri dari tiga tombol), tombol select untuk melakukan pilihan, tombol PS digunakan untuk mengaktifkan gamepad, dan tombol start untuk memulai aplikasi.

4. Tombol analog dua axis (dua buah) yang juga memiliki fungsi tombol digital biasanya digunakan sebagai arah.

[image:30.595.94.528.236.707.2]

5. Tombol analog (dua buah) biasa digunakan untuk mengatur kecepatan.

(31)

2.5.

USB Host Shield

USB Host Shield memungkinkan mengkomunikasikan perangkat USB ke arduino. Arduino Host Shield ini berbasis IC kontroler USB MAX3421E, yang merupakan pengendali USB perifer/host yang mengandung logika digital dan sirkuit analog yang diperlukan untuk menerapkan full-speed USB perifer atau full-/low speed host sesuai spesifikasi USB rev 2.0.[2]

[image:31.595.87.513.275.606.2]

Arduino melakukan komunikasi dengan MAX3421E menggunakan SPI (Serial Peripheral Interface) bus (melalui header ICSP).[2] Melalui pin 10,11,12, dan 13 pada Atmega328P. USB Host Shield ini mendapatkan power supply dari arduino, itulah sebabnya tidak ada jack power tersedia. Gambar 2.7 menunjukkan konfigurasi board USB Host Shield yang akan digunakan.

Gambar 2.7 Konfigurasi Board USB Host Shield [5]

Serial Peripheral Interface (SPI) merupakan salah satu mode komunikasi serial

(32)

dengan peripheral lainnya yang mendukung komunikasi dengan SPI. Adapun berikut ini penjelasan untuk 3 jalur utama dari SPI adalah sebagai berikut.

a) MOSI (Master Output Serial Input)

Perangkat yang bertindak sebagai master, maka pin MOSI digunakan sebagai pin

output, tetapi jika digunakan sebagai slave, maka pin MOSI tersebut berfungsi sebagai pin input.

b) MISO (Master Input Slave Output)

Perangkat yang bertindak sebagai master, maka pin MISO sebagai pin input, tetapi jika digunakan sebagai slave, maka pin MISO tersebut berfungsi sebagai pin

output.

c) SCK (Serial Clock)

Berfungsi sebagai clock data. Dimana pin SCK dari master akan memberikan clock

ke pin SCK slave, guna menyelaraskan komunikasi antar kedua perangkat tersebut. Selain tiga jalur tersebut, terdapat pula SS (Slave Select) yang digunakan untuk memilih perangkat slave mana yang akan digunakan, tentu saja bila lebih dari satu slave. Sebuah perangkat master dapat memberikan perintah pada beberapa perangkat slave. Sedangkan untuk perangkat slave tidak dapat memberikan perintah, hanya memberikan data sesuai instruksi yang diberikan oleh perangkat master.

2.5.1.

Operasi SPI Bus

SPI bus dapat dioperasikan dengan sebuah perangkat single master dan dengan satu atau lebih perangkat slave. [15] Untuk memulai komunikasi, bus master mengkonfigurasi

clock, menggunakan frekuensi yang didukung oleh perangkat slave, biasanya hingga beberapa MHz. Master kemudian memilih perangkat slave dengan logika level 0 pada

select line. Jika masa tunggu diperlukan, seperti untuk konversi analog ke digital, master

harus menunggu setidaknya periode waktu sebelum mengeluarkan clock cycle.

Selama setiap siklus clock SPI, sebuah transmisi data full duplex (dua arah) terjadi.

Master mengirimkan satu bit pada garis MOSI dan slave membacanya, sementara slave

(33)

bahkan ketika hanya transfer data satu arah. Dalam komunikasi SPI hanya 1 bagian yang mengirimkan clock yang mana akan disebut master dan bagian lainya disebut slave.

Dalam SPI, hanya satu sisi menghasilkan sinyal clock (biasanya disebut CLK atau SCK untuk Serial Clock). Sisi yang menghasilkan clock disebut "master", dan sisi lain disebut "slave". Selalu ada hanya satu master (yang hampir selalu mikrokontroler), tetapi bisa ada beberapa slave. [16]

Ketika data dikirim dari master ke slave, data tersebut dikirim pada garis data yang disebut MOSI (Master Out/ Slave In). Jika slave harus mengirim respon kembali ke

master, master akan terus menghasilkan sejumlah siklus clock yang diatur sebelumnya, dan slave akan menempatkan data ke baris data yang ketiga yang disebut miso (Master In/Slave Out).[16]

[image:33.595.87.521.323.650.2]

Perhatikan bahwa SPI adalah "full duplex" (memiliki baris sent dan reveive yang terpisah), dengan demikian dalam situasi tertentu, Anda dapat mengirim dan menerima data pada saat yang sama. Pada Gambar 2.8 diperlihatkan pengiriman clock cycle, data MISO, dan data MISO pada master-slave.

Gambar 2.8 Pengiriman Data SPI [16]

Baris data berikutnya adalah SS untuk memilih Slave. Ini memberitahu slave yang harus bangun dan menerima / mengirim data dan juga digunakan ketika beberapa slave

(34)

Line SS biasanya high jika memutus slave dari bus SPI. (Jenis logika ini dikenal sebagai "aktif rendah," dan akan sering digunakan untuk mengaktifkan dan me-reset baris.) Tepat sebelum data dikirim ke slave, garis dibuat low yang mengaktifkan slave. Ketika selesai menggunakan slave, status dibuat high lagi. Gambar 2.9 Menunjukan penggunaan

[image:34.595.96.495.183.515.2]

line SS.

Gambar 2.9 SPI Bus Menggunakan Slave-select [16]

(35)

Gambar 2.10 Data Transmisi SPI Bus [15]

2.5.2.

Komunikasi USB

Kabel USB telah dirancang untuk memastikan koneksi yang benar selalu dibuat.[3]

[image:35.595.85.526.332.594.2]

USB terdiri dari 4 kabel. Dua di antaranya, D + dan D-, membentuk twisted pair yang bertanggung jawab untuk membawa sinyal data diferensial, serta beberapa sinyal perintah tunggal akhir. Sinyal pada dua kabel tersebut dirujuk ke kabel (ketiga) GND. Kabel keempat disebut VBUS, dan membawa suplai nominal 5V, yang dapat digunakan oleh perangkat sebagai power.[3] Konfigurasi kabel USB ditunjukkan pada Gambar 2.11.

Gambar 2.11 Konfugurasi Kabel USB [3]

Ada beberapa kondisi sinyal dari USB, yang terbentuk dari kabel D+ dan D-. Perbedaan dari kondisi tersebut adalah:

a) Detached

Ketika tidak ada perangkat USB yang tersambung maka D+ dan D- akan low

seperti pada Gambar 2.12.

(36)

b) Attached

Ketika perangkat tersambung ke host, maka host akan melihat D+ dan D- pada level „1‟, dan mengetahui bahwa perangkat telah terhubung. Sinyal level „1‟ pada D- untuk perangkat low speed dan pada D+ untuk perangkat high speed. Pada Gambar 2.13 merupakan kondisi attached.

Gambar 2.13 Attached State [3] c) Idle

Keadaan ketika garis pulled up dalam keadaan high, dan garis lain low, terlihat pada Gambar 2.14. Keadaan ini terjadi sebelum dan sesudah paket data terkirim.

Gambar 2.14 Idle State [20]

d) Kondisi-kondisi lain dapat dilihat pada Tabel 2.2 dan contoh pengiriman data USB

pada Gambar 2.15.

Tabel 2.2 State pada Koneksi USB [3]

Bus State Levels

Differential '1' D+ high, D- low

Differential '0' D- high, D+ low

Single Ended Zero (SE0) D+ and D- low

Single Ended One (SE1) D+ and D- high

Data J State: Low-speed Full-speed

Differential '0' Differential '1'

Data K State: Low-speed Full-speed

(37)

Tabel 2.2 (Lanjutan) State pada Koneksi USB [3]

Bus State Levels

Idle State: Low-speed Full-speed

D- high, D+- low

D+ high, D- low

Resume State Data K state

Start of Packet (SOP) Data lines switch from idle to K state End of Packet (EOP) SE0 for 2 bit times followed by J state

for 1 bit time

Disconnect SE0 for >= 2us

Connect Idle for 2.5us

Reset SE0 for >= 2.5 us

Gambar 2.15 Contoh Pengiriman Data USB [18]

Tabel 2.3 merupakan paket data yang dikirimkan gamepad ke mikrokontroler. Tabel 2.3 Data Hex dari Gamepad

No. Tombol yang digunakan Data Hex 1 Netral (tidak ada tombol

yang ditekan)

01 00 00 00 00 00 87 87 83 7A 00 00 00 00

00 00 00 00 00 00 00 00 00 00 00 00 00 00

00 03 EF 14 00 00 00 00 23 6D 77 01 1D 01

(38)

Tabel 2.3 (Lanjutan) Data Hex dari Gamepad

No. Tombol yang digunakan Data Hex

2 Nav. Up 01 00 10 00 00 00 87 87 83 79 00 00 00 00 FF 00 00 00 00 00 00 00 00 00 00 00 00 00

00 03 EF 14 00 00 00 00 23 6D 77 01 1D 01

F5 01 F8 01 90 02 00

3 Nav. Right 01 00 20 00 00 00 87 87 83 7A 00 00 00 00 00 FF 00 00 00 00 00 00 00 00 00 00 00 00

00 03 EF 14 00 00 00 00 23 6D 77 01 1D 01

EC 02 02 01 91 02 00

4 Nav. Down 01 00 40 00 00 00 87 87 83 7A 00 00 00 00 00 00 FF 00 00 00 00 00 00 00 00 00 00 00

00 03 EF 14 00 00 00 00 23 6D 77 01 1D 01

FA 01 FD 01 8F 02 00

5 Nav. Left 01 00 80 00 00 00 87 87 83 79 00 00 00 00 00 00 00 FF 00 00 00 00 00 00 00 00 00 00

00 03 EF 14 00 00 00 00 23 6D 77 01 1D 01

F4 02 07 01 90 02 00

6 Triangle 01 00 00 10 00 00 87 87 83 7A 00 00 00 00 00 00 00 00 00 00 00 00 FF 00 00 00 00 00

00 03 EF 14 00 00 00 00 23 6D 77 01 1D 02

1C 02 0F 01 93 02 00

7 Circle 01 00 00 20 00 00 87 87 83 7A 00 00 00 00 00 00 00 00 00 00 00 00 00 FF 00 00 00 00

00 03 EF 14 00 00 00 00 23 6D 77 01 1D 02

2D 01 D1 01 A5 02 00

Data yang keluar dari gamepad terdiri dari 49 Byte, yang mana setiap bit memiliki konfigurasi alamat fungsi. Pada Tabel 2.4 dijabarkan tentang paket data dari gamepad

(39)

Tabel 2.4 Paket Data Gamepad [17]

Byte

index bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 Info

0 report ID (always 0x01)

1 reserved

2 D left D down D

right D up Start R3 L3

Sele

ct 1 means pressed, 0

means released

3 Squar

e X Circle

Triangl

e R1 L1 R2 L2

4 Unknown PS

5 Unknown

6 Left stick X axis

7 Left stick Y axis

8 Right stick X axis

9 Right stick Y axis

10 Unknown, seems to count downwards, non-random pattern

11 Unknown, seems to count upwards by 3, but by 2 when [10]

underflows

12 Unknown yet, 0x03 or 0x04

13-24 analog button data

00 is released and FF is fully

pressed

25-39 unknown

40-41 acceleromerer X axis, little endian 10 bit unsigned

42-43 acceleromerer Y axis, little endian 10 bit unsigned

44-45 acceleromerer Z axis, little endian 10 bit unsigned

46-47 gyroscope, little endian 10 bit unsigned

48-49 unknown

2.6.

Mikrokontroler ATmega328P

ATmega328 pada Gambar 2.16 dan diagram bloknya pada Gambar 2.17 adalah mikrokontroler keluaran dari atmel yang mempunyai arsitektur RISC (Reduce Instruction Set Computer) yang dimana setiap proses eksekusi data lebih cepat dari pada arsitektur CISC (Completed Instruction Set Computer). ATmega328 memiliki fitur 32 kByte downloadable flash memory, 1 kByte Electrically Erasable Programmable Read-Only Memory (EEPROM), 2 kByte internal Static Random-Access Memory (SRAM), 2

(40)

Gambar 2.16 Konfigurasi Pin Atmega328P dengan Fungsi Pada Arduino [7]

ATmega328 memiliki beberapa mode komunikasi. Salah satu di antaranya adalah

USART. Universal Synchronous dan Asynchronous serial Receiver and Transmitter (USART) adalah salah satu mode pengiriman dan penerimaan data secara serial. USART

dapat dipakai untuk transfer data antar mikrokontroler dan komputer yang memiliki fitur UART (Universal Asynchronus serial Receiver anf Transmitte). Untuk komunikasi dua arah (bi-directional), USART memiliki tiga sambungan, yaitu Rx (Receiver), Tx (Tramsmitter), dan GND (Ground)[4].

Setiap pin dapat memberikan atau menerima suatu arus maksimum 40 mA dan mempunyai sebuah resistor pull-up (terputus secara default) 20-50 KOhm. Hampir semua AVR memiliki format 16-bit. Setiap alamat memori program terdiri dari instruksi 16-bit atau 32-bit. Terdapat register lain yang terpetakan dengan teknik memory mapped I/O selebar 64 byte. Beberapa register ini digunakan untuk fungsi khusus, antara lain sebagai

(41)

Gambar 2.17 Diagram Blok ATmega328[4]

2.6.1.

Fitur

Mikrokontroller ini memiliki beberapa fitur antara lain :

1. 130 macam instruksi yang hampir semuanya dieksekusi dalam satu siklus clock. 2. 32 x 8-bit register serba guna.

3. Kecepatan mencapai 16 MIPS dengan clock 16 MHz.

(42)

5. Memiliki EEPROM (Electrically Erasable Programmable Read Only Memory) sebesar 1KB sebagai tempat penyimpanan data semi permanent karena EEPROM tetap dapat menyimpan data meskipun catu daya dimatikan.

6. Memiliki SRAM (Static Random Access Memory) sebesar 2KB.

7. Memiliki pin I/O digital sebanyak 14 pin 6 diantaranya PWM (Pulse Width Modulation) output.

8. Master / Slave SPI Serial interface.

2.6.2.

Konfigurasi Pin

a. VCC

Tegangan supplai digital. b. GND

Ground.

c. Port B (PB7:0) XTAL1/XTAL2/TOSC1/TOSC2

Port B (portB0...portB5) merupakan jalur data 8 bit yang dapat difungsikan sebagai input/output. Selain itu port B memiliki fungsi khusus dapat dilihat pada Tabel 2.5.

Tabel 2.5 Fungsi Khusus Port B[13]

Pin Keterangan

PB0 ICP1 berfungsi sebagai timer counter 1 input capture pin

PB1 OC1A dapat difungsikan sebagai keluaran PWM (Pulse With Modulation)

PB2

OC1B dapat difungsikan sebagai keluaran PWM (Pulse With Modulation), SS merupakan jalur komunikasi SPI SPI dan juga berfungsi sebagai jalur

pemrograman serial (ISP)

PB3

OC2A dapat difungsikan sebagai keluaran PWM (Pulse With Modulation), MOSI merupakan jalur komunikasi SPI SPI dan juga berfungsi sebagai jalur

pemrograman serial (ISP)

(43)

Tabel 2.5 (Lanjutan) Fungsi Khusus Port B[13] Pin Keterangan

PB5 SCK merupakan jalur komunikasi SPI dan juga berfungsi sebagai jalur pemrograman serial (ISP),

PB6 Pin reset

PB7 TOSC2 berfungsi sebagai sumber clock external untuk timer, XTAL2 merupakan sumber clock utama mikrokontroler

d. Port C (PC5:0)

Port C (portC0...portC5) merupakan jalur data 7 bit yang dapat difungsikan sebagai

input/ouput digital. Tabel 2.6 menunjukan fungsi khusus dari port C. Tabel 2.6 Fungsi Khusus Port C[13]

Pin Keterangan

PC0 ADC0 channel dengan resolusi 10 bit. ADC digunakan untuk mengubah input yang berupa tegangan analog menjadi data digital PC1 ADC1 channel dengan resolusi 10 bit. ADC digunakan untuk

mengubah input yang berupa tegangan analog menjadi data digital PC2 ADC2 channel dengan resolusi 10 bit. ADC digunakan untuk

mengubah input yang berupa tegangan analog menjadi data digital PC3 ADC3 channel dengan resolusi 10 bit. ADC digunakan untuk

mengubah input yang berupa tegangan analog menjadi data digital PC4 ADC4 channel dengan resolusi 10 bit. ADC digunakan untuk

mengubah input yang berupa tegangan analog menjadi data digital

PC5 ADC5 channel dengan resolusi 10 bit. ADC digunakan untuk mengubah input yang berupa tegangan analog menjadi data digital

PC6 ADC6 channel dengan resolusi 10 bit. ADC digunakan untuk mengubah input yang berupa tegangan analog menjadi data digital

Port C

(44)

e. PC6/RESET

Jika RSTDISBL Fuse diprogram, PC6 digunakan sebagai I / O pin. Perhatikan bahwa karakteristik listrik dari PC6 berbeda dari pin lain Port C. Jika RSTDISBL Fuse adalah tidak dapat diprogram, PC6 digunakan sebagai masukan ulang. Low

level pada pin ini selama lebih dari panjang pulsa minimum akan menghasilkan reset, bahkan jika jam tidak berjalan.

f. Port D (PD7:0)

Port D (portD0...PortD7) merupakan jalur data 8 bit yang masing-masing pin juga dapat difungsikan sebagai input/output. Port C juga memiliki fungsi khusus sebagai berikut :

 USART (TXD dan RXD) merupakan jalur data komunikasi serial dengan level sinyal TTL. Pin TXD berfungsi untuk mengirimkan data serial, sedangkan RXD kebalikannya yaitu sebagai pin yang berfungsi untuk menerima data serial.

 Interrupt (INT0 dan INT1) merupakan pin dengan fungsi khusus sebagai interupsi hardware. Interupsi biasanya digunakan sebagai selaan dari program, misalkan pada saat program berjalan kemudian terjadi interupsi hardware/software maka program utama akan berhenti dan akan menjalankan program interupsi.

 XCK dapat difungsikan sebagai sumber clock external untuk USART, namun kita juga dapat memanfaatkan clock dari CPU, sehingga tidak perlu membutuhkan external clock.

 T0 dan T1 berfungsi sebagai masukan counter external untuk timer 1 dan timer 0.

 AIN0 dan AIN1 keduanya merupakan masukan input untuk analog comparator. g. AVCC

(45)

h. AREF

AREF adalah pin referensi analog untuk converter A/D. i. ADC7:6 (TQFP and QFN/MLF Package Only)

Dalam paket TQFP dan QFN/MLF, ADC7:6 melayani sebagai analog input untuk converter A/D. Pin-pin ini ditenagai dari supply analog dan berperan sebagai 10-bit ADC chanel.

2.7.

FTDI FT232RL

FTDI FT232RL adalah USB to serial (TTL level) converter yang merupakan cara simple utntuk interface TTL ke USB yang handal dan praktis untuk digunakan pada rangkaian elektronika berbasis mikrokontroler, dengan demikian perangkat mikrokontroler bisa berkomunikasi lewat standar USB.

Gambar 2.18 FTDI Basic Breakout

Pada Gambar 2.18 terlihat modul FTDI Basic Breakout FT232RL. Modul ini difungsikan sebagai USB-to-Serial Adapter yang mana digunakan sebagai alat pemograman ke mikrokontroler dari komputer. Konektor USB yang terpasang adalah konektor tipe mini-B female. Secara default, modul ini bekerja pada tegangan 5V tetapi dapat juga bekerja pada tegangan 3,3V dengan penyesuaian rangkaian power supply-nya.

IC FT-232 digunakan sebagai IC konverter dari 232 ke 485. IC ini terdiri dari 28 pin, oleh pabrikannya pin-pin IC nya dibagi empat grup besar yaitu USB interface group

(Tabel 2.7), Power dan Ground (Tabel 2.8), Miscellaneous signal group (Tabel 2.9),

(46)

Tabel 2.7 USB Interface Group [9] Nomor Pin Nama Tipe Keterangan

14 USBDP I/O USB data signal plus

15 USBDM I/O USB data signal minus

Tabel 2.8 Power dan Ground Group [9]

Nomor Pin Nama Tipe Keterangan

1 VCCIO PWR Supply untuk UART interface dan CBUS

dengan range +1.8V sampai +5.25V

4, 17, 20 GND PWR Ground

16 3V3 OUT OUT

Keluaran tegangan sebesar +3.3V. Dikopling dengan kapasitor 100nF ke

ground

19 VCC PWR +3.3V sampai 5.25V untuk supply core

24 AGND PWR Analog ground untuk interval clock

Tabel 2.9 Miscellanous Signal Group[9]

Nomor Pin Nama Tipe Keterangan

5, 12, 13, 23, 25, 29 NC NC Tidak tersambung

18 Reset Input Active low reset. Jika tidak digunakan

disambung ke VCC.

26 Test Input Disambung ke GND untuk test mode

27 OSC1 Input Input 12MHz oscillator cell

28 OSC0 Output Ouput dari 12Mhz oscillator cell

Tabel 2.10 UART Interface dan CBUS Group[9]

Nomor Pin Nama Tipe Keterangan

30 TXD Output Transmit asynchronous data output

(47)

Tabel 2.10 (Lanjutan) UART Interface dan CBUS Group[9]

Nomor Pin Nama Tipe Keterangan

32 RTS Output Request to send control output

2 RXD Input Receiving asynchronous data input

3 RI Input Ring indicator control output

6 DSR Input Data set ready control input

7 DCD Input Data carrier detect control input

8 CTS Input Clear to send control input

9 CBUS4 I/O Configurable CBUS I/O pin.

10 CBUS2 I/O Configurable CBUS I/O pin.

11 CBUS3 I/O Configurable CBUS I/O pin.

21 CBUS1 I/O Configurable CBUS I/O pin.

22 CBUS0 I/O Configurable CBUS I/O pin.

2.8.

Arduino

Arduino adalah sebuah platform open-source elektronik berdasarkan hardware

yang mudah digunakan dan perangkat lunak. Ini dimaksudkan untuk siapa pun yang membuat proyek interaktif.[6] Gambar 2.16 sebelumnya memperlihatkan fungsi arduino (tertulis warna merah) pada pin Atmega328 yang mana fungsi-fungsi tersebut sudah terintegrasi dengan bahasa pemograman arduino.

Arduino memiliki beberapa keunggulan dibandingkan dengan platform elektronik lainnya [10]. Beberapa keunggulan tersebut antara lain:

1. Modul Arduino adalah sebuah platform elektronik yang open source yang berbasis pada kemudahan dan fleksibilitas penggunaan hardware dan software. Artinya pembaca dapat mengunduh software dan gambar rangkaian Arduino tanpa harus membayar kepada pembuat Arduino.

2. IDE Arduino merupakan multiplatform yang dapat dijalankan di berbagai sistem operasi seperti Windows, Macintosh, dan Linux.

(48)

4. Modul Arduino merupakan platform interaktif karena dapat mengambil masukan dari berbagai tombol atau sensor, mampu mengendalikan berbagai lampu, motor, dan output fisik lainnya.

5. Modul Arduino dapat berdiri sendiri, atau dapat melakukan komunikasi dengan

software yang berjalan di komputer seperti Flash, Processing, dan MaxMSP.

6. Pemrograman Arduino menggunakan kabel yang terhubung dengan port Universal Serial Bus (USB), bukan port serial. Fitur ini sangat berguna karena banyak komputer sekarang ini tidak memiliki port serial.

7. Biaya yang dibutuhkan untuk membeli modul Arduino cukup murah, sehingga tidak terlalu menakutkan untuk membuat kesalahan.

8. Proyek Arduino ini dikembangkan dalam dunia pendidikan, sehingga bagi pemula akan lebih cepat dan mudah untuk mempelajarinya.

9. Memiliki begitu banyak pengguna dan komunitas di internet yang dapat membantu setiap kesulitan yang dihadapi.

Area pemrograman Arduino dikenal dengan Integrated Development Environment

(IDE) [11]. Area pemrograman yang digunakan untuk menulis baris program dan mengunggahnya ke dalam board Arduino . disamping itu juga dibuat lebih mudah dan dapat berjalan pada beberapa sistem operasi seperti Windows, Macintosh, dan Linux [12]. Gambar 2.19 dan Tabel 2.11 merupakan area pemrograman Arduino dan keterangan beberapa tombol utama.

(49)

Tabel 2.11 Keterangan Tombol Pada Tampilan IDE Arduino [12]

No. Tombol Nama Fungsi

1 Verify

Menguji apakah ada kesalahan pada program atau

sketch. Apabila sketch sudah benar, maka sketch

tersebut akan dikompilasi. Kompilasi adalah proses mengubah kode program ke dalam kode mesin.

2 Upload Mengirimkan kode mesin hasil kompilasi ke board Arduino

3 New Membuat sketch yang baru

4 Open Membuka sketch yang sudah ada

5 Save Menyimpan sketch

6 Serial

Monitor

Menampilkan data yang dikirim dan diterima melalui komunikasi serial.

IDE Arduino membutuhkan beberapa pengaturan yang digunakan untuk mendeteksi board Arduino yang sudah dihubungkan ke komputer. Beberapa pengaturan tersebut adalah mengatur jenis board yang digunakan sesuai dengan board yang terpasang dan mengatur jalur komunikasi data melalui perintah Serial Port. Kedua pengaturan tersebut dapat ditemukan pada pull down menu Tools.

2.9.

Sudut Garis Parallel

Perhitungan sudut garis parallel dibutuhkan untuk analisa gerak lengan robot yang mana dalam bergerak menggunakan link-link pembantu. Link-link ini berguna untuk meringankan beban motor yang digunakan sekaligus agar gripper tetap berada pada posisi horisontal. Link-link tersebut sebenarnya membentuk segi 4 yang dapat berubah-ubah sudutnya. Persamaan sudut segi-n dapat ditunjukkan pada persamaan di bawah ini:

(50)

Gambar 2.20 Sudut-Sudut yang Dimiliki oleh Garis Parallel

Dari persamaan 2.7 kita dapat menemukan berapa besar sudut dan cara menghitung sudut pada segi 4.

Segi 4 = (4-2) x 180˚ = 360˚...(2.8) Jadi dapat dikatakan bahwa jumlah dari sudut bangun datar segi 4 yang ditunjukkan pada gambar 2.20 adalah 360˚.

2.10.

Kerangka Lengan Robot

Lengan robot bisa juga disebut sebagai manipulator, yaitu bagian mekanik yang dapat difungsikan untuk memindah, mengangkat, dan memanipulasi benda kerja. Ada beberapa konfigurasi manipulator (lengan robot) yang ada di luar sana. Disini penulis membuat lengan robot dengan konfigurasi sendi lengan. Konfigurasi ini adalah yang paling populer untuk tugas-tugas linier dalam pabrik, terutama untuk dapat melaksanakan fungsi layaknya pekerja pabrik, seperti mengangkat barang dari konveyor, mengelas, memasang komponen mur, baut pada produk, dan sebagainya.[1] Dengan tool pergelangan yang khusus (gripper bisa sesuai kebutuhan) struktur lengan sendi ini cocok digunakan untuk menjangkau daerah kerja yang sempit dengan sudut jangkauan yang beragam.

(51)

Berikut pada Gambar 2.21 ditampilkan bagian-bagian dari lengan robot dan arah gerakan setiap sendinya.

Gambar 2.21 Lengan Robot 3 DOF[26] Bagian-bagian lengan robot:

a. Base adalah sendi paling bawah dari lengan robot. Gerakan dari sendi ini adalah ke kanan dan ke kiri.

b. Shoulder adalah sendi kedua dari bawah dimana gerakan sendi ini adalah maju mundur.

c. Elbow adalah sendi ketiga dari bawah dimana gerakan sendi ini naik turun.

d. Terakhir adalah gripper yang merupakan end of point dari lengan robot yang mana digunakan sebagai manipulator dan disini digunakan untuk menjepit benda kerja.

2.10.1.

Link Pengerak Menggunakan Prinsip Tuas

Tuas (lever,dalam Bahasa Inggris) atau pengungkit adalah salah satu pesawat sederhana yang digunakan untuk mengubah efek atau hasil dari suatu gaya. Hal ini dimungkinkan terjadi dengan adanya sebuah batang ungkit dengan titik tumpu (fulcrum), titik gaya (force), dan titik beban (load) yang divariasikan letaknya.[27] Tuas dapat dibedakan atas 3 kelas yaitu:

Buka/Tutup

GRIPPER ELBOW

SHOULDER

(52)

1. Kelas pertama yaitu titik tumpu (T) berada di tengah, diantara lengan kuasa (Lk) dan lengan beban (Lb).

2. Kelas kedua yaitu lengan beban berada di antara titik tupu dan lengan kuasa.

[image:52.595.86.529.168.589.2]

3. Kelas ketiga yaitu lengan kuasa berada di antara lengan beban dan titik tumpu.

Gambar 2.22 Prinsip kerja tuas[28]

Prinsip kerja tuas kelas pertama ditunjukkan pada gambar 2.22. Gambar tersebut dapat diperjelas dengan rumus berikut:

W . Lb = F . Lk ...(2.9) Keterangan :

W = berat beban (N,kg)

Lb = panjang lengan beban (cm) F = gaya yang diberikan (N,kg) L = panjang lengan kuasa (cm)

Prinsip kerja tuas akan ditemukan pada link penggerak yang mana digunakan untuk meringankan beban motor dalam mengangkat beban.

2.10.2.

Jangkauan Lengan Robot

(53)
[image:53.595.95.522.133.614.2]

z dapat tidak dituliskan.[1] Pada Gambar 2.23 ditunjukkan konfigurasi lengan robot untuk perhitungan trigonometri.

Gambar 2.23 Konfigurasi Perhitungan Jangkauan Lengan Robot Ujung dari lengan dinyatakan sebagai P(x,y),[1]

P(x,y)=f( , ) ...(2.10) Jika P diasumsikan sebagai verktor penjumlahan yang terdiri dari vektor lengan-1 dan lengan-2,[1]

=[ cos , sin ] ...(2.11) =[ cos ( + ), sin ( + )] ...(2.12) maka

(54)

34

BAB III

PERANCANGAN PENELITIAN

3.1.

Perancangan Sistem

[image:54.595.81.560.258.583.2]

Perancangan pengendali lengan robot ini akan dibagi menjadi dua subsistem, yaitu subsistem software dan subsistem hardware. Subsistem software berhubungan dengan perancangan program yang akan digunakan untuk menjalankan perangkat yang akan dibuat, sedangkan subsistem hardware sendiri dari minimum sistem mikrokontroler, desain lengan robot, dan interface dengan gamepad. Berikut ini adalah rancangan diagram blok dari sistem pengendali lengan robot yang akan dibuat.

Gambar 3.1 Diagram Blok Perancangan

Dari gambar diagram blok sistem pada Gambar 3.1, tombol gamepad yang akan digunakan adalah 8 tombol digital. Setiap dua tombol akan mengendalikan 1 motor servo

CW dan CCW. Pertama- tama outputgamepad masuk ke USB Host Shield yang membantu mikrokontroler dalam membaca sinyal USB dari gamepad. Pada USB Host Shield ini terdapat IC pengendali USB MAX3421E yang merupakan pengendali USB pertifer/host

yang mengandung logika digital dan sirkuit analog yang diperlukan untuk menerapkan

full-speed USB perifer atau full/ low speed host sesuai spesifikasi USB rev 2.0. Setelah

Lengan Robot

Gamepad USB Host Shield ATmega 328

Servo 1 (BASE)

Servo 2 (SHOULDER)

Servo 3 (ELBOW)

(55)

melewati USB Host Shield ini input akan diproses oleh mikrokontroler Atmega 328 yang mana akan memberi output ke 4 motor servo.

3.1.1.

Perancangan Fungsi Tombol Gamepad

[image:55.595.94.507.189.506.2]

Pada bagian ini diidentifikasi fungsi dari tombol gamepad yang akan digunakan untuk kendali lengan robot. Dalam rancangan ini akan menggunakan 8 tombol digital untuk operasi pengendali lengan robot. Untuk fungsi-fungsinya secara lebih detil dapat dilihat pada Tabel 3.1 berikut.

Tabel 3.1 Fungsi Tombol Gamepad

NO TOMBOL FUNGSI TOMBOL

1. Nav. Left Base (servo 1) : berputar ke kiri secara horisontal. 2. Nav. Right Base (servo 1) : berputar ke kanan secara horisontal. 3. Nav. Up Shoulder (servo 2) : bergerak maju.

4. Nav. Down Shoulder (servo 2) : bergerak mundur.

5. Cross Elbow (servo 3) : bergerak naik secara vertikal. 6. Triangle Elbow (servo 3) : bergerak turun secara vertikal. 7. Square Gripper (servo 4) : menutup.

8. Circle Gripper (servo 4) : membuka.

3.2.

Perancangan Hardware

Hardware menjadi salah satu bagian penting untuk membangun pengendali lengan robot agar semua sistem dapat bekerja dengan baik. Pada penelitian ini, hardware dibagi dalam dua kategori, yaitu perancangan hardware elektrik dan perancangan hardware

mekanik.

3.2.1.

Perancangan Rangkaian Sistem Minimum Mikrokontroler

ATmega328P

(56)

minumum untuk beroperasi yang terdiri dari rangkaian eksternal yaitu, rangkain reset dan rangkaian osilator.

1. Rangkaian Reset

Rangkaian reset ditunjukkan pada Gambar 3.2 di bawah, yang mana akan terhubung ke pin reset pada mikrokontroler Atmega328. Rangkaian pin reset bertujuan untuk memaksa proses kerja pada mikrokontroler diulang dari awal. Ketika tombol reset ditekan, maka pin reset akan mendapat input logika low, sehingga mikrokontroler akan mengulang proses eksekusi program dari awal. Pada perancangan rangkaian reset

[image:56.595.97.517.254.571.2]

digunakan resistor sebesar 10KΩ yang serhubung ke power, yang mana berfungsi sebagai saklar pull-up.

Gambar 3.2 Rangkaian Reset Mikrokontroler 2. Rangkaian Osilator

Gambar 3.3 di bawah merupakan rangkaian osilator, perancangan rangakaian osilator menggunakan kristal dengan frekuensi 16Mhz dan dua kapasitor 22pF pada kaki pin 9 (XTAL1) dan pin 10 (XTAL2) pada mikrokontroler.

Gambar 3.3 Rangkaian Osilator Mikrokontroler

(57)
[image:57.595.86.529.118.567.2]

dipasanglah konektor I/O dan konektor komunikasi melalui SPI (SCK, MISO, MOSI) yaitu pada pin 17, 18, 19 (ICSP header) pada mikrokontroler.

Gambar 3.4 Rangkaian Minimum Sistem dan Interface-nya

Perancangan penggunaan port pin sebagai input dan output pada mikrokontroler yang ditunjukkan pada Gambar 3.4 disesuaikan dengan kebutuhan walaupun pada rancangan semua port digunakan. Port-port tersebut ada yang digunakan untuk input

dari USB Host Shield, sebagai downloder program ke dalam mikrokontroler, sebagai

(58)
[image:58.595.94.502.90.632.2]

Tabel 3.2 Port pada Mikrokontroler

No Nama Port Keterangan

1 Port_B5 SCK (ICSP HEADER)

2 Port_B4 MISO (ICSP HEADER)

No Nama Port Keterangan

3 Port_B3 MOSI (ICSP HEADER)

4 Port_C6 RESET (ICSP HEADER) 5 Port_VCC VCC (ICSP HEADER) 6 Port_GND GND (ICSP HEADER) 4 Port_D2 Outputservo_01 5 Port_D3 Outputservo_02 6 Port_D4 Outputservo_03 7 Port_D5 Outputservo_04 8 Port_D1 TX (programming) 9 Port_D0 RX (programming)

3. Rangkaian Komunikasi USB Host Shield

USB Host Shield pertama-tama membutuhkan power supply dari mikrokontroler agar dapat bekerja. Dalam mengirim data dari shield ke mikrokontroler digunakan komunikasi SPI (pada ICSP header). Pada Gambar 3.5 terlihat bahwa shield mengirim data ke mikrokontroler.

Gambar 3.5 Koneksi Antara USB Host Shield Dan Mikrokontroler

MIKROKONTROLER

(59)

3.2.2.

Perancangan Kerangka Robot

Lengan robot yang akan dibuat adalah LiteArm yang merupakan desain open source yang dipublikasi secara gratis pada www.thingiverse.com demi kepentingan pendidikan. Desain ini dipilih untuk membatu pengendali lengan robot yang akan dibuat dapat diimplementasikan secara langsung. Kelebihan dari desain ini adalah memiliki ukuran kecil, membutuhkan komponen yang relatif murah yakni hanya motor mikro servo.

1. Desain Gripper

Desain gripper yang ditunjukkan pada Gambar 3.6 adalah desain gripper yang berfungsi untuk menjepit benda. Gripper ini digerakkan oleh satu motor mikro servo

[image:59.595.92.525.234.594.2]

yang terhubung menggunakan link ke salah satu penjepit. Untuk membuat kedua penjepit bergerak bersamaan hanya dengan satu motor servo saja maka pada bagian pangkal penjepit didesain menyerupai roda gigi sehingga saling terhubung satu sama lain.

Gambar 3.6 Desain Gripper [26]

2. Desain Link Lengan Robot

(60)

nantinya. Selain itu link (penghubung) itu dapat membantu memperkuat lengan

[image:60.595.100.497.120.591.2]

shoulder dan elbow. Desain link lengan robot dapat dilihat pada Gambar 3.7 dan 3.8.

Gambar 3.7 Link Lengan Robot Tampak Kanan [14]

Gambar 3.8 Link Lengan Robot Tampak Kiri [14] 3. Sudut Pergerakan

Setiap motor servo yang digunakan memiliki spesifikasi dapat berputar sebesar

(61)
[image:61.595.89.528.70.700.2]

Gambar 3.9 Sudut Pergerakan Lengan Robot [14] 4. Desain Keseluruhan Lengan Robot

Pada Gambar 3.10, 3.11, 3.12, dan 3.13 diperlihatkan desain lengan robot secara lebih detil, penampakan dari berbagai sudut.

Gambar 3.9 Sudut Pergerakan Lengan Robot [14] BASE SHOULDER ELBOW

GRIPPER

(62)
[image:62.595.94.512.221.693.2]

Gambar 3.11 Lengan Robot Tampak Samping Kanan (Kiri) Dan Tampak Samping Kiri (Kanan) [14]

Gambar 3.12 Lengan Robot Tampak Atas (Kiri) Dan Tampak Bawah (Kanan) [14]

(63)

3.2.3.

Torsi Motor

Mengetahui torsi motor adalah merupakan hal yang penting untuk mengetahui batas kemampuan beban dari lengan robot yang akan dibuat. Dari desain lengan robot telah ditentukan ada dua jenis motor servo yang akan digunakan, yakni micro servo dan standard servo. Dari dua jenis servo tersebut maka telah ditentukan motor servo yang akan dipakai dan dari spesifikasi yang ada akan dihitung berat beban yang mampu ditanggung oleh masing-masing sendi, base, shoulder, elbow, dan gripper.

Pertama kita akan menghitung beban yang mampu ditanggung oleh shoulder, yang mana pada bagian ini juga menanggung beban dari elbow dan gripper. Motor yang digunakan merupakan servo standard yang memakai metal gear sehingga lebih kuat dan memiliki torsi yang cukup besar. Motor ini memiliki torsi 9,02 kg.cm-10,22 kg.cm pada tegangan kerja 4,8V-6V. Berikut perhitungan beban kerja shoulder:

τ = F. r

9,02 kg.cm = F. 14,3 cm F = (9,02 kg.cm) / (14,3 cm) F = 0,63 kg

F = 0,63 kg . 9,8 m/ = 6,17 kg m/ F = m . g

6,17 kg m/ = m . 9,8 m/ m = (6,17 kg m/ ) / (9,8 m/ ) m = 0,63 kg

(64)

τ = F. r

9,02 kg.cm = F. 5,2 cm F = (9,02 kg.cm) / (5,2 cm) F = 1,73 kg

F = 1,73 kg . 9,8 m/ = 16,95 kg m/ F = m . g

16,95 kg m/ = m . 9,8 m/ m = (16,95 kg m/ ) / (9,8 m/ ) m = 1,73 kg

kemudian menggunakan prinsip kerja tuas, W . Lb = F . Lk

W . 15,5 cm = 1,73 kg . 5,2 cm

W =

W = 0,58 kg

Pada bagian base tidak ada perhitungan yang dilakukan karena tidak memiliki panjang r, sehingga torsi dari motor tidak terpotong sama sekali.

τ = 9,02 kg.cm

Desain gripper yang unik membuat pergerakan sudut tidak linier pada sudut jepit gripper

dan sudut servo. Berbeda dengan yang lainnya, gripper menggunakan motor micro servo

yang memiliki torsi 1,8 kg.cm pada tegangan kerja 4,8 V. Berikut perhitungan beban maksimalnya:

τ = F. r

(65)

F = (1,8 kg.cm) / (2,2 cm) F = 0,82 kg

F = 0,82 kg . 9,8 m/ = 8,04 kg m/ F = m . g

8,04 kg m/ = m . 9,8 m/ m = (8,04 kg m/ ) / (9,8 m/ ) m = 0,82 kg

3.2.4.

Gerak Lengan Robot

Desain lengan robot yang akan dibuat terdiri dari link penggerak utama dan link

[image:65.595.88.536.335.690.2]

penggerak pembantu yang akan dijelaskan pada bagian ini. Gambar 3.14 merupakan gambar link-link yang ada pada lengan robot beserta keterangan dimensinya. Garis yang memiliki warna sama menandakan memiliki ukuran yang sama, pemberian warna diberikan agar desain lengan robot lebih mudah untuk dijelaskan.

(66)

Gambar berikutnya adalah keterangan besar sudut-sudut yang ada pada lengan robot, ditunjukkan pada gambar 3.14. Pada prinsipnya sudut-sudut yang terjadi pada lengan robot berdasarkan pada teori sudut segi empat. Jumlah sudut dari segi empat adalah

360˚. Seperti yang ditunjukkan pada gambar 3.15 pada bagian kiri ada segi empat yang memiliki garis biru yang sejajar dan garis hitam yang saling sejajar pula. Pada gambar ditunjukkan sudut-sudut mana saja yang memiliki besar yang sama walaupun link-link

[image:66.595.88.532.237.565.2]

bergerak. Link-link pembantu ini juga yang membuat bagian gripper selalu pada posisi horisontal. Posisi horisontal ini sangat berfungsi untuk gripper sebagai pick and place.

Gambar 3.15 Sudut-Sudut pada Lengan Robot

Hal berikut yang dapat dijelaskan dari lengan robot adalah lintasan pergerakan dari lengan tersebut. Hal tersebut dijelaskan pada gambar 3.16 yang menampilkan lintasan dari

(67)
[image:67.595.94.550.68.622.2]

Gambar 3.16 Arah Pergerakan Semua Sendi pada Lengan Robot

3.2.5.

Jangkauan Lengan Robot

Gambar 3.17 Konfigurasi Perhitungan Jangkauan Lengan Robot

Untuk melakukan perhitungan jangkauan lengan robot ini maka di ambil 2 posisi sudut yang berbeda. Letak l1 dan l2 pada lengan robot ditunjukkan pada Gambar 3.17. Dalam perhitungan ini digunakan persamaan (2.13) dan (2.14).

Panjang lengan l1: 14.3 cm Panjang lengan l2: 15.5 cm

l1

l2

P(x,y)

(68)
[image:68.595.100.497.69.671.2]

Gambar 3.18 Posisi Maksimal Vertikal a) Posisi 1; = 90 ; = -95

x= cos + cos ( + ) x= 14.3 cos 90 + 15.5 cos (90-95) x= 15.44 cm

y= sin + sin ( + ) y= 14.3 sin 90 + 15.5 sin (90-95) y= 12.9 cm

P(x,y) = (15.44 , 12.9) cm

Gambar 3.19 Posisi Maksimal Horisontal b) Posisi 2; = 5 ; = -40

(69)

x= 14.3 cos 5 + 15.5 cos (5-40) x= 26.9cm

y= sin + sin ( + ) y= 14.2 sin 5 + 15.3 sin (5-40) y= -7.6 cm

P(x,y) = (26.9 , -7.6) cm

Terlihat telah didapat jangkauan terjauh secara vertikal dan horisontal. Pada jarak terjauh horisontal nilai Y negatif, nilai ini dikarenakan titik 0 berada pada titik motor servo shoulder.

Selain posisi X dan Y dari lengan robot, ada pula kondisi sudut pergerakan dari lengan robot. Untuk lebih mudah dijabarkan maka penjelasan disajika

Gambar

Gambar 2.6 Konfigurasi Tombol Gamepad [19]
Gambar 2.7 Konfigurasi Board USB Host Shield [5]
Gambar 2.8 Pengiriman Data SPI [16]
Gambar 2.9 SPI Bus Menggunakan Slave-select [16]
+7

Referensi

Dokumen terkait

Memperoleh gelar sarjana dari jurusan Teknik Elektro Universitas Kristen Satya Wacana, Salatiga, pada tahun 1977, gelar master dari University of Texas, Austin, USA

Rumusan masalah yang dibuat pada penelitian ini adalah Bagaimana membuat trainer kit (hardware dan software) Master – Slave Robot Lengan dengan pergerakan robot bisa

Desain sistem kontrol lampu jarak jauh yang diperlihatkan pada gambar 5 terdiri dari sensor tegangan dan sensor cahaya, Arduino Mega, Ethernet shield , router, relay

Gambar 2.29 Tampilan jendela block diagram pada LabVIEW

Berdasarkan pada blok diagram sistem pada gambar 6 maka sistem ini dirancang membutuhkan beberapa perangkat hardware berupa mikrokontroler Arduino Mega 2560 sebagai kontrol ,

(a) Alur Penelitian Hardware dan (b) diagram alur Data Flow Diagram Level 0 Pada perancangan sebuah hardware atau perangkat keras pada sistem absensi terdiri tiga modul yaitu

METODOLOGI PENELITIAN Desain sistem instrumentasi pembuatan alat ukur massa dengan kantilever dan strain gage diperlihatkan dalam bentuk diagram pada Gambar 4,

Gambar 3.1 Diagram alur proses pembuatan sistem. Berdasarkan Gambar 3.1 terdapat tahapan-tahapan yang dilalui dalam pembuatan sistem mulai dari pengumpulan data hingga