• Tidak ada hasil yang ditemukan

ANALISIS METODE FUZZY LOGIC UNTUK ROBOT PENGANGKAT BEBAN TESIS MUHAMMAD FURQON SIREGAR

N/A
N/A
Protected

Academic year: 2022

Membagikan "ANALISIS METODE FUZZY LOGIC UNTUK ROBOT PENGANGKAT BEBAN TESIS MUHAMMAD FURQON SIREGAR"

Copied!
106
0
0

Teks penuh

(1)

ANALISIS METODE FUZZY LOGIC UNTUK ROBOT PENGANGKAT BEBAN

TESIS

MUHAMMAD FURQON SIREGAR 167038089

PROGRAM STUDI S2 TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN

2019

(2)

ANALISIS METODE FUZZY LOGIC UNTUK ROBOT PENGANGKAT BEBAN

TESIS

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Magister Teknik Informatika

MUHAMMAD FURQON SIREGAR 167038089

PROGRAM STUDI S2 TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN

2019

(3)
(4)

PERNYATAAN

ANALISIS METODE FUZZY LOGIC UNTUK ROBOT PENGANGKAT BEBAN

TESIS

Saya mengakui bahwa tesis ini adalah hasil karya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

Medan, 15 Agustus 2019

MUHAMMAD FURQON SIREGAR

NIM. 167038089

(5)

PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Sebagai sivitas akademika Universitas Sumatera Utara, saya yang bertanda tangan dibawah ini:

Nama : Muhammad Furqon Siregar

NIM : 167038089

Program Studi : Magister (S2) Teknik Informatika Jenis Karya Ilmiah : Tesis

Demi pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada Universitas Sumatera Utara Hak Bebas Royalti Non-Eksklusif (Non-Exclusive Royalty Free Right) atas tesis saya yang berjudul:

ANALISIS METODE FUZZY LOGIC UNTUK ROBOT PENGANGKAT BEBAN

Beserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas Royalti Non- Eksklusif ini, Universitas Sumatera Utara berhak menyimpan, mengalih media, memformat, mengelola dalam bentuk database, merawat dan mempublikasikan tesis saya tanpa meminta izin dari saya selama tetap mencantumkan nama saya sebagai penulis dan sebagai pemegang dan/atau sebagai pemilik hak cipta.

Demikian pernyataan ini dibuat dengan sebenarnya.

Medan, 15 Agustus 2019

MUHAMMAD FURQON SIREGAR NIM. 167038089

(6)

Telah diuji pada

Tanggal: 15 Agustus 2019

PANITIA PENGUJI TESIS Ketua : Suherman, Ph.D

Anggota : 1. Dr. Poltak Sihombing, M.Kom

2. Prof. Dr. Muhammad Zarlis

3. Dr. Elviawaty Muisa Zamzami

(7)

RIWAYAT HIDUP

DATA PRIBADI

Nama Lengkap : Muhammad Furqon Siregar, S. T.

Tempat dan Tanggal Lahir : Medan, 03 Mei 1994

Alamat Rumah : Jl. Setiabudi Gg. Sepakat Jaya No. 15 Medan Telepon/HP : 0813-9777-1201

E-mail : [email protected] Instansi Tempat Bekerja : Universitas Harapan Medan

Alamat Kantor : Jl. Hm. Jhoni No. 70C Medan

DATA PENDIDIKAN

SD : SD Harapan 1 Medan TAMAT : 2006

SMP : SMP Harapan 1 Medan TAMAT : 2009

SMA : SMA Harapan 1 Medan TAMAT : 2012

S1 : Teknik Informatika UnHar Medan TAMAT : 2016

S2 : Teknik Informatika USU Medan TAMAT : 2019

(8)

UCAPAN TERIMA KASIH

Puji dan syukur penulis panjatkan kepada Allah SWT, dengan limpahan rahmat dan karunia-Nya, tesis ini berhasil diselesaikan dalam waktu yang telah ditetapkan.

Penulisan tesis merupakan salah satu persyaratan wajib untuk menyelesaikan studi Magister Teknik Informatika di Fasilkom-TI USU. Judul penelitian dalam tesis yang telah selesai dilakukan penulis berjudul “ANALISIS METODE FUZZY LOGIC UNTUK ROBOT PENGANGKAT BEBAN”. Dalam penyelesaian tesis ini, tidak terlepas dari bantuan dan kerjasama serta doa dan dukungan dari berbagai pihak.

Untuk itu penulis ingin menyampaikan ucapan terima kasih kepada :

1. Bapak Prof. Dr. Runtung Sitepu, SH, M.Hum., selaku Rektor Universitas Sumatera Utara Medan.

2. Bapak Prof. Dr. Opim Salim Sitompul, M.Sc., selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara Medan.

3. Bapak Prof. Dr. Muhammad Zarlis selaku Ketua Program Studi Magister (S2) Teknik Informatika, Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara Medan.

4. Bapak Dr. Syahril Efendi, S.Si, M.IT, selaku Sekretaris Program Studi Magister (S2) Teknik Informatika, Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara Medan.

5. Bapak M. Andri Budiman, ST, M.Comp.Sc, MEM selaku Dosen Penasehat Akademik yang telah memberikan arahan/nasehat yang baik selama proses perkuliahan maupun penyelesaian tesis.

6. Bapak Suherman, Ph.D dan Bapak Dr. Poltak Sihombing, M.Kom selaku Dosen Pembimbing yang telah membimbing saya sepenuh hati agar penulisan tesis ini menjadi lebih baik.

7. Bapak Prof. Dr. Muhammad Zarlis dan Ibu Dr. Elviawaty Muisa Zamzami

selaku Dosen Pembanding yang telah memberikan saran dan masukan yang

sangat berguna dalam perbaikan penulisan tesis ini.

(9)

8. Kedua Orangtua tercinta, Ayahanda Drs. H. Mahmud Nurdin Siregar dan Ibunda Dra. Hj. Zainab MZ., M.Hum yang telah memberikan kasih sayang, doa serta dukungan berupa materi dan lain-lain.

9. Abang dan kakak Penulis, Achmad Mahroza Ramadhan Siregar, S. T., Mazlah Aini Siregar, S. S., Rakhmat Fauzan Siregar, Amd.

10. Para staf/pegawai administrasi di Program Studi Magister Teknik Informatika yang telah banyak membantu dalam pengurusan akademik.

11. Abang-abang/kakak-kakak senior Kom A dan Kom B 2016/2017, serta teman- teman seperjuangan Kom C 2016.

12. Bapak/Ibu Dosen, rekan sejawat, serta staf/pegawai yang bertugas di Universitas Harapan Medan.

13. Adik-adik penerus UKM OSSC UnHar Medan, yang sedang menyelesaikan laporan kerja praktik dan juga sedang menyelesaikan studi sarjana.

14. Terkhusus Nadia Widari Nasution, S.Si yang selalu mendukung, menemani, serta memberi semangat kepada penulis.

Semoga segala kebaikan dan bantuannya dibalas oleh Allah SWT dan semoga tesis ini dapat bermanfaat bagi semua pihak yang memerlukannya.

Medan, 15 Agustus 2019 Penulis,

MUHAMMAD FURQON SIREGAR

NIM. 167038089

(10)

ABSTRAK

Fuzzy logic digunakan untuk mengatasi penghitungan input beban yang tidak pasti nilainya. Nilai yang dimaksud terletak pada jumlah beban yang akan dijepit dan diangkat oleh tuas robot. Pada mini prototype yang dirancang, semua sistem terintegrasi dengan microcontroller board Arduino Uno jenis R3. Motor servo digunakan sebagai penggerak tuas pengangkatan dan penjepitan, sedangkan sensor digunakan untuk pembacaan beban yang akan diangkat. Setiap beban akan dihitung beratnya dengan menggunakan sensor massa. Tujuannya agar mendapat nilai yang lebih akurat. Beban yang akan di input dibatasi dengan maksimal berat 900 gram.

Percobaan yang dilakukan dengan menggunakan fuzzy logic model Tsukamoto, menunjukkan hasil akurasi yang lebih baik dalam menentukan derajat kemiringan antara empat buah servo. Nilai yang dihasilkan oleh sistem fuzzy ini terlihat stabil dan bertambah secara bertahap. Nilai rata-rata derajat kemiringan empat buah servo adalah 34,1%.

Kata Kunci : Robot Pengangkat Beban, Fuzzy Logic, Mikrokontroler

(11)

ANALYSIS OF FUZZY LOGIC METHOD FOR LOAD LIFTING ROBOT

ABSTRACT

Fuzzy logic method is used to overcome uncertain input load calculations. The intended value lies in the amount of load that will be clamped and lifted by the robot lever. All systems are integrated and controlled by the Arduino Uno R3 microcontroller board. The use of a servo motor is for driving lever and pinching lever, while the sensor is used for reading the load mass to be lifted. Load mass is approximated by using sensor to get a more accurate value. The load mass to be lifted is limited to a maximum weight of 900 gram. The experiments with Tsukamoto's fuzzy logic model shows better accuracy results in determining the degree of slope between four servo. The value generated by this fuzzy system is stable and increasing gradually. The average value of the slope of four servo is 34,1%.

Keywords : Load Lifting Robot, Fuzzy Logic, Microcontroller

(12)

DAFTAR ISI

Hal.

HALAMAN JUDUL i

PERSETUJUAN ii

PERNYATAAN ORISINALITAS iii

PERNYATAAN PERSETUJUAN PUBLIKASI iv

PANITIA PENGUJI v

RIWAYAT HIDUP vi

UCAPAN TERIMA KASIH vii

ABSTRAK ix

ABSTRACT x

DAFTAR ISI xi

DAFTAR TABEL xiv

DAFTAR GAMBAR xv

BAB 1 PENDAHULUAN

1.1 Latar Belakang 1

1.2 Rumusan Masalah 2

1.3 Batasan Masalah 3

1.4 Tujuan Penelitian 3

1.5 Manfaat Penelitian 3

BAB 2 TINJAUAN PUSTAKA

2.1 Mikrokontroler 4

2.2 Arduino 4

2.2.1 Arduino Uno 5

2.2.2 Input dan Output 7

2.2.3 Komunikasi 7

2.3 Fuzzy Logic 7

2.3.1 Proses Inferensi 8

(13)

2.4 Fungsi Keanggotaan 9

2.4.1 Kurva Linier 9

2.4.2 Kurva Segitiga 9

2.4.3 Kurva Trapesium 10

2.5 Himpunan Fuzzy (Fuzzy Set) 10

2.6 IF – THEN Rule 12

2.7 Metode Tsukamoto 12

2.8 Komponen Prototype Robot Pengangkat Beban 13

2.8.1 Sensor Massa 13

2.8.2 Motor Servo 14

2.8.3 Motor Driver 15

2.8.4 Motor DC 16

2.9 Penelitian Terkait 17

BAB 3 METODOLOGI PENELITIAN

3.1 Tahapan Penelitian 20

3.2 Analisa Kebutuhan 23

3.2.1 Peletakan Sensor Massa Terhadap Prototype 23

3.2.2 Sistem Pengukuran Sensor Massa 24

3.4 Identifikasi Variabel 24

3.5 Rancang Fungsi Keanggotaan 24

3.5.1 Variabel Beban 24

3.6 Aturan Fuzzy 26

BAB 4 HASIL DAN PEMBAHASAN

4.1 Pendahuluan 27

4.2 Pengujian Pertama 27

4.3 Pengujian Kedua 32

4.4 Analisa Pengujian 36

4.5 Hasil Percobaan 36

4.6 Grafik Dan Rata – Rata Hasil Pengujian Dengan Fuzzy Logic 39

4.7 Pengujian Tanpa Fuzzy Logic 40

4.8 Perbandingan Penggunaan Logika Fuzzy 41

(14)

BAB 5 KESIMPULAN DAN SARAN

5.1 Kesimpulan 43

5.2 Saran 43

DAFTAR PUSTAKA 44

LAMPIRAN 46

(15)

DAFTAR TABEL

Hal.

Tabel 2.1 Deskripsi Arduino Uno 6

Tabel 2.2 Penelitian Terkait 17

Tabel 3.1 Daftar Aturan Fuzzy Pada Servo 1 Dan 2 26

Tabel 3.2 Daftar Aturan Fuzzy Pada Servo 3 26

Tabel 3.3 Daftar Aturan Fuzzy Pada Servo 4 26

Tabel 4.1 Data Input Beban 27

Tabel 4.2 Hasil Percobaan Dengan Menggunakan Fuzzy Logic 37 Tabel 4.3 Hasil Percobaan Tanpa Menggunakan Fuzzy Logic 40

(16)

DAFTAR GAMBAR

Hal.

Gambar 2.1 Tampilan Board Arduino Uno R3 5

Gambar 2.2 Representasi Garis Kurva Segitiga 10

Gambar 2.3 Representasi Kurva Trapesium 10

Gambar 2.4 Sensor Massa Dengan Beban Maksimal 5 Kg 14

Gambar 2.5 Mini Servo dan Servo Besar 15

Gambar 2.6 Motor Driver L298N 15

Gambar 2.7 Motor DC Komplit Dengan Roda 16

Gambar 2.8 Prototype Robot Pengangkat Beban 17

Gambar 3.1 Alur Tahapan Penelitian 20

Gambar 3.2 Flowchart Pergerakan Tanpa Metode Fuzzy Logic 22 Gambar 3.3 Diagram Alir Penentuan Berat Beban Dengan Fuzzy Logic 23 Gambar 3.4 Desain Fungsi Keanggotaan Variabel Beban 25 Gambar 4.1 Grafik Pengujian Terhadap 10 Data Input Beban 39

Gambar 4.2 Grafik Perbandingan Antara Penggunaan Metode Fuzzy Logic 43

(17)

BAB 1 PENDAHULUAN

1.1. Latar Belakang

Dalam memasuki dunia globalisasi, teknologi semakin berperan dalam mempermudah melakukan berbagai peran dan aktivitas keseharian. Kemajuan di bidang transportasi, komunikasi, kesehatan, pendidikan, maupun bidang lainnya merupakan contoh-contoh bahwa manusia semakin memerlukan teknologi dalam kehidupan ini. Teknologi sendiri telah tersedia dan tidak pernah ada habisnya untuk dipelajari dan dikembangkan.

Fuzzy logic adalah cabang ilmu artificial intelligence, yaitu pengetahuan yang membuat komputer maupun alat elektronik, dapat melakukan hal-hal yang dikerjakan manusia. Desain kontroler logika fuzzy telah dikendalikan dengan algoritma genetika untuk lebih mengoptimalkan parameter kontroler. Fuzzy logic controller merupakan alternatif sistem kendali modern yang memiliki respon sistem yang stabil. Dalam merancang sistem kontrol dengan menggunakan logika fuzzy terdapat tiga proses yaitu fuzifikasi, evaluasi rule dan defuzifikasi. Masing-masing proses tersebut akan mempengaruhi respon sistem yang dikendalikan.

Fuzzy logic dapat diaplikasikan sebagai pengendali robot, yang digunakan untuk mengambil sebuah keputusan, yang mana sudah diteliti oleh (Andi, 2010).

Penelitiannya membahas tentang perancangan pengendali robot berdasarkan perilaku, dimana parameternya menggunakan particle swarm optimization (PSO).

Penerapan fuzzy logic dapat diaplikasikan pada robot terkendali mikrokontroler.

Pemakaian mikrokontroler yang semakin mudah disebabkan adanya platform dari

physical computing yang bersifat open source (Asep, 2014). Selain kemudahan

perakitan, bahasa pemrograman integrated development environment (IDE) yang juga

mempermudah proses kompilasi menjadi kode biner dan proses uploading ke dalam

memori mikrokontroler.

(18)

Mikrokontroler sebagai pengendali sebuah robot telah banyak digunakan, dan dikombinasikan dengan teknik soft computing, salah satunya diajukan oleh (Bobby, 2015) yang membahas bagaimana fungsi fuzzy logic sebagai pengendali keseimbangan robot beroda. Sensor-sensor digunakan sebagai pemberi input sistem, diantaranya sensor accelerometer dan gyroscope sebagai pengendali motor DC agar tetap seimbang dan mempertahankan posisi tegak dan tetap lurus.

Penerapan fuzzy logic pada multi-mikrokontroler suatu model prototype robot, untuk dapat menghindari halangan rintangan maupun tembok. Penelitian ini telah dilakukan oleh (Nuryono, 2009), dimana logika fuzzy dibangun menggunakan pendekatan behavior based approach (berbasis perilaku). Berdasarkan informasi dari tujuh buah sensor ultrasonik dan tiga buah tactile switch, difungsikan agar dapat menghindari rintangan, serta dapat menyusuri dinding pembatas.

Pengendalian dengan fuzzy logic juga dapat diaplikasi untuk mengendalikan pengangkatan beban. Hal ini telah dilakukan oleh (Furqon, 2017), dimana komunikasi antara pengendali dengan pergerakan tuas dan capitan dilakukan untuk fungsi minimal pengangkatan beban. Meskipun demikian, Teknik-teknik soft computing belum diaplikasikan untuk memaksimalkan sistem.

Sehubungan dengan hal tersebut penelitian ini fokus menjadikan metode fuzzy logic untuk pengendalian robot pengangkat beban agar dapat memaksimalkan beban tuas angkat dan capitan untuk mengangkat benda yang dikategorikan dalam beban ringan, beban sedang, dan beban berat. Pemilihan parameter input yaitu dari sensor massa yang terdapat pada prototype, yang akan menjadi fokus penelitian ini.

Diharapkan dapat diperoleh prototype robot pengangkat beban yang lebih cerdas dalam memindahkan serta dapat mengetahui seberapa berat benda yang akan diangkat sehingga dapat dimaksimalkan untuk menghindari kegagalan fungsi pengangkatan.

1.2 Rumusan Masalah

Peneliti menemukan masalah pada pengangkatan tuas dan jepitan benda, dimana kekuatan derajat harus disesuaikan agar benda berhasil diangkat dan tidak jatuh.

Permasalahan ini akan diselesaikan dengan menggunakan pendekatan metode fuzzy

logic. Melalui penggunaan fuzzy logic, prototype diharapkan dapat mengetahui berapa

(19)

besaran maksimum serta dapat menganalisis berat yang dikategorikan dalam klasifikasi beban yang akan di angkat.

1.3 Batasan Masalah

Agar pembahasan lebih terarah dan tidak menyimpang dari pokok masalah, maka penulis memberikan batasan-batasan pembahasan dalam penelitian ini, yang mana batasan masalahnya yaitu:

1. Pembahasan fuzzy hanya pada penghitungan jumlah nilai input yang diberikan.

2. Klasifikasi beban dilakukan untuk proses inferensi.

1.4 Tujuan Penelitian

Adapun tujuan dari penelitian ini yaitu untuk memaksimalkan poros derajat kemiringan servo dengan menambahkan fuzzy logic agar diketahui kapasitas beban yang mampu diangkat, dan juga sebagai klasifikasi bobot. Sehingga dapat diketahui maksimal input beban terhadap jepitan dan juga pada kekuatan pengangkatannya.

1.5 Manfaat Penelitian

Adapun manfaat penelitian ini adalah dapat menganalisis teknik fuzzy logic pada robot

pengangkat beban sehingga tugas dilakukan dengan mengetahui berat benda yang

mampu diangkatnya. Selain itu, dapat dijadikan rujukan dalam memaksimalkan teknik

fuzzy logic pada pengendalian robot lengan.

(20)

BAB 2

TINJAUAN PUSTAKA

2.1. Mikrokontroler

Mikrokontroler adalah piranti elektronik yang terintegrasi, memiliki kemampuan manipulasi data berdasarkan suatu urutan instruksi program yang dibuat oleh programmer. Mikrokontroler merupakan sebuah sistem komputer fungsional dalam sebuah chip. Di dalamnya terkandung sebuah inti prosesor, RAM (Random Access Memory), memori program, dan perlengkapan untuk input output.

Mikrokontroler merupakan suatu alat elektronika digital yang mempunyai masukan dan keluaran serta kendali dengan program yang bisa ditulis dan dihapus dengan cara khusus, cara kerja mikrokontroler adalah membaca dan menulis data.

Mikrokontroler merupakan komputer didalam chip yang digunakan untuk mengontrol peralatan elektronik, yang menekankan efisiensi dan efektifitas biaya. Secara umumnya bisa disebut “pengendali kecil” dimana sebuah sistem elektronik yang sebelumnya banyak memerlukan komponen-komponen pendukung seperti IC TTL dan CMOS dapat direduksi/diperkecil dan akhirnya terpusat serta dikendalikan oleh mikrokontroler ini (Kadir, 2015).

Pada prinsipnya, mikrokontroler adalah sebuah komputer berukuran kecil yang dapat digunakan untuk mengambil keputusan, melakukan hal-hal yang bersifat berulang, dan dapat berinteraksi dengan peranti-peranti eksternal, seperti penggunaan sensor, penggunaan GPS untuk memperoleh data posisi kebumian dan satelit, dan motor untuk mengontrol gerakan pada robot. (Kadir, 2015).

2.2. Arduino

Arduino merupakan rangkaian elektronik yang bersifat open source, serta memiliki

perangkat keras dan perangkat lunak yang mudah untuk digunakan. Arduino dapat

mengenali lingkungan sekitarnya melalui berbagai jenis sensor dan juga dapat

(21)

mengendalikan lampu, pergerakan motor, dan berbagai jenis aktuator maupun fungsi lainnya. Arduino mempunyai banyak jenis, di antaranya Arduino Uno, Arduino Mega 2560, Arduino Fio, dan lainnya. (Kadir, 2015). Yang digunakan pada penelitian ini adalah arduino uno jenis R3.

2.2.1 Arduino Uno

Arduino adalah sebuah board mikrokontroler yang berbasis ATmega328. Arduino mampu men-support mikrokontroler, dapat dikoneksikan dengan komputer menggunakan kabel USB. Arduino sebagai pengendali mikro single-board yang bersifat open source, diturunkan dari Wiring platform, dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Hardware nya memiliki prosesor Atmel AVR dan untuk software nya memiliki bahasa pemrograman sendiri. Saat ini Arduino sangat populer di seluruh dunia, banyak pemula yang belajar mengenal robotika dan elektronika dengan menggunakan Arduino, hal ini dikarenakan mudah untuk dipelajari. Tapi tidak hanya pemula, para profesional pun ikut senang mengembangkan aplikasi elektronik menggunakan Arduino. Bahasa yang dipakai dalam Arduino bukan assembler yang relatif sulit, tetapi bahasa C yang disederhanakan dengan bantuan pustaka-pustaka (libraries) Arduino. Arduino juga menyederhanakan proses bekerja dengan mikrokontroler.

Gambar 2.1 Tampilan Board Arduino Uno R3

Arduino memiliki kelebihan tersendiri dibanding board mikrokontroler yang lain.

Selain bersifat open source, arduino juga mempunyai bahasa pemrograman tersendiri

yang berupa bahasa C. Selain itu dalam board arduino sendiri sudah terdapat loader

(22)

yang berupa USB sehingga memudahkan pengguna ketika memprogram mikrokontroler di dalam arduino. Sedangkan pada board mikrokontroler yang lain harus membutuhkan rangkaian loader terpisah untuk memasukkan program ketika kita memprogram chip IC mikrokontroler. Port USB tersebut selain untuk loader ketika memprogram, bisa juga difungsikan sebagai port komunikasi serial.

Arduino menyediakan 20 pin input dan output, yang terdiri dari 6 pin input analog dan 14 pin digital input - output. Untuk 6 pin analog sendiri bisa juga difungsikan sebagai output digital, jika diperlukan output digital tambahan selain 14 pin yang sudah tersedia. Untuk mengubah pin analog menjadi digital cukup mengubah konfigurasi pin pada program. Dalam board kita bisa lihat pin digital diberi keterangan 0-13, jadi untuk menggunakan pin analog menjadi output digital, pin analog yang pada keterangan board 0-5 kita ubah menjadi pin 14-19, dengan kata lain pin analog 0-5 berfungsi juga sebagai pin output digital 14-16.

Sifat open source arduino juga banyak memberikan keuntungan tersendiri untuk kita dalam menggunakan board ini, karena dengan sifat open source komponen yang kita pakai tidak hanya tergantung pada satu merek, namun memungkinkan kita bisa memakai semua komponen yang ada dipasaran. Bahasa pemrograman arduino merupakan bahasa C yang sudah disederhanakan syntax bahasa pemrogramannya, sehingga mempermudah kita dalam mempelajari dan mendalami mikrokontroler (Djuandi, 2011).

Tabel 2.1 Deskripsi Arduino Uno

Mikrokontroler ATmega 328

Tegangan Pemrosesan 5V

Input Yang Disarankan 7 – 12 V

Batas Tegangan Masuk 20 V

Jumlah Pin I / O Digital 14 Pin Digital (6 diantaranya PWM)

Jumlah Pin Analog 6 Pin

Memori Flash 32 KB (ATmega 328p)

Clock Speed 16 MHz

(23)

2.2.2 Input dan Output

Setiap 14 pin digital pada arduino dapat digunakan sebagai input atau output, menggunakan fungsi pinMode(), digitalWrite(), dan digitalRead(). Input/output dioperasikan pada 5 volt. Setiap pin dapat menghasilkan atau menerima maximum 40 mA dan memiliki internal pull-up resistor (disconnected oleh default) 20-50K Ohm.

Beberapa pin memiliki fungsi sebagai berikut :

1. Serial : 0 (RX) dan 1 (TX). Digunakan untuk menerima (RX) dan mengirim (TX) TTL data serial. Pin ini terhubung pada pin yang koresponding dari USB ke TTL chip serial.

2. Interupt eksternal : 2 dan 3. Pin ini dapat dikonfigurasikan untuk trigger sebuah interupt pada low value, rising atau falling edge, dan perubahan nilai.

3. PWM : 3, 5, 6, 9, 10, dan 11. Mendukung 8-bit output PWM dengan fungsi analogWrite().

4. SPI : 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Pin SCK ini mensupport komunikasi SPI, yang mana masih mendukung hardware, yang tidak termasuk pada bahasa arduino.

2.2.3 Komunikasi

Arduino Uno memiliki sejumlah fasilitas untuk berkomunikasi dengan komputer, antara Arduino jenis lain, maupun mikrokontroler lain. Chip ATmega328 ini menyediakan UART TTL (5V) komunikasi serial, yang tersedia pada pin digital 0 (RX) dan 1 (TX). Firmware Arduino menggunakan USB driver standar COM, dan tidak ada driver eksternal yang dibutuhkan namun, pada Windows file ini diperlukan.

Perangkat lunak Arduino termasuk monitor serial yang memungkinkan data sederhana yang akan dikirim ke board Arduino. RX dan TX LED di board akan berkedip ketika data sedang dikirim melalui chip USB-to-serial dan koneksi USB ke computer (Furqon, 2017).

2.3. Fuzzy Logic

Logika fuzzy merupakan suatu ilmu untuk menyelesaikan masalah yang tidak

pasti kebenarannya. Yang mana memiliki derajat keanggotaan dalam rentang 0

(24)

(nol) hingga 1 (satu), Berbeda dengan hal nya sistem kontrol konvensional yang mendefinisikan sesuatu dengan kategori benar dan salah (1 atau 0) selain nilai itu akan dibulatkan atau diabaikan, logika fuzzy dapat didefinisikan nilai dengan beberapa kategori. Seperti misalkan dalam bahasa keseharian kita yang menyatakan hal dengan kata “sedikit”, “sangat banyak”, “sangat dingin” dan seterusnya.

Maka, output dari logika fuzzy tidak hanya berupa nilai 1 atau 0, melainkan ada beberapa nilai yang menjadi output yang akan digunakan untuk melakukan proses pada sistem kontrol (Budiharto & Suhartono, 2014).

Ada beberapa alasan mengapa banyak peneliti menggunakan logika fuzzy, yaitu di antara lain:

1. Logika fuzzy fleksibel, yaitu mampu beradaptasi dengan perubahan– perubahan, dan nilai ketidakpastian dalam suatu permasalahan

2. Logika fuzzy memiliki nilai toleransi terhadap data yang tidak tepat. Jika diberikan kumpulan data yang homogen, kemudian digabungkan dengan data yang bersifat eksklusif, maka logika fuzzy mampu menangani data eksklusif tersebut.

3. Konsep logika fuzzy sangat mudah untuk dimengerti. Dikarenakan logika fuzzy menggunakan dasar teori himpunan, konsep matematis yang didasari penalaran fuzzy tersebut cukup mudah untuk dimengerti penggunanya.

4. Logika fuzzy mampu dalam memodelkan fungsi-fungsi nonlinear yang sangat kompleks.

5. Logika fuzzy dapat dibangun dan diaplikasikan pada pengalaman-pengaman para pakar secara langsung tanpa melalui proses pelatihan. Dalam hal ini, sering dikenal dengan nama Fuzzy Expert Systems menjadi bagian terpenting.

6. Logika fuzzy dapat digabung dengan teknik-teknik kendali secara konvensional.

Hal ini umumnya terjadi pada aplikasi di ilmu bidang teknik mesin maupun teknik elektro.

2.3.1. Proses Inferensi

Proses inferensi bertujuan untuk memetakan logika untuk mengambil sebuah

keputusan. Pada bagian ini biasanya digambarkan dengan table FAM (Fuzzy

Associative Map). Pengambilan keputusan untuk output fuzzy disini ditentukan

(25)

sendiri oleh operator (yang membuat logika fuzzy tersebut), dengan mengacu pada basis pengetahuan mengenai logika fuzzy. Biasanya proses ini berupa pernyataan implikasi seperti kata “Jika – Maka” atau yang biasa disebut dengan “IF-Then Rules”.

2.4. Fungsi Keanggotaan

Fungsi keanggotaan fuzzy (membership function) adalah suatu kurva yang menunjukkan pemetaan titik-titik input data ke dalam derajat keanggotaannya yang nilainya berkisar antara 0 hingga 1. Salah satu cara yang dapat digunakan untuk mendapatkan nilai kenaggotaan adalah dengan melalui pendekatan fungsi (Jang, et al., 1997). Beberapa dijelaskan fungsi keanggotaan fuzzy, yaitu:

2.4.1 Kurva Linear

Kurva Linear adalah pemetaan input ke derajat keanggotaannya digambarkan sebagai suatu garis lurus. Pada representasi linear terdapat 2 kemungkinan,

a. Kurva Linier Naik

Kurva linier naik merupakan himpunan yang dimulai dengan nilai domain yang memiliki derajat keanggotaan nol (0) bergerak naik lurus ke arah kanan menuju nilai domain yang memiliki derajat keanggotaan yang lebih tinggi.

b. Kurva Linier Turun

Kurva linier turun merupakan himpunan dimana dimulai dari nilai titik domain dengan derajat keanggotaan tertinggi pada sisi kiri, kemudian bergerak menurun ke nilai domain yang memiliki derajat keanggotaan lebih rendah dari nilai sebelumnya.

2.4.2. Kurva Segitiga

Representasi kurva segitiga dapat dilihat pada halaman selanjutnya pada gambar 2.2.

(26)

Gambar 2.2 Representasi Garis Kurva Segitiga

Kurva segitiga yang ditunjukkan pada gambar 2.2. terbentuk dari gabungan antara 2 garis (linear). Dimana parameter (variabel) diberikan dengan huruf abjad {a,b,c} (dengan a<b<c) yang menentukan t it ik koordinat x dari ketiga sudut segitiga tersebut.

2.4.3 Kurva Trapesium

Pada gambar 2.3. dapat dilihat sebuah kurva trapesium.

Gambar 2.3 Representasi Kurva Trapesium

Kurva trapesium seperti yang ditunjukkan pada gambar di atas, pada dasarnya adalah kurva segitiga, namun ada beberapa titik putus – putus ditengah yang mempunyai keanggotaan bernilai maksimal 1 (satu).

2.5. Himpunan Fuzzy (Fuzzy Set)

Himpunan fuzzy (fuzzy set) merupakan sekumpulan objek x, dimana masing-masing objek memiliki nilai keanggotaan (membership function) “μ” atau disebut juga dengan nilai kebenaran. Jika “X” adalah sekumpulan objek dan anggotanya dinyatakan dengan x, maka fuzzy set dari A di dalam X adalah himpunan dengan sepasang anggota atau dapat dinyatakan dengan :

1.0

a b c

1.0

a b c d

(27)

A= {µA(x) | x:x €X, (x) €[0,1] € R } . . . . . . . (1) Contoh : Terdapat suatu himpunan data yang berisikan variabel beban dengan klasifikasi sebagai berikut :

a. Ringan : jika beban dari 0 sampai dengan 350 Gram

b. Sedang : jika beban lebih besar dari 350 Gram dan lebih kecil dari 650 Gram c. Berat : jika berat lebih besar, atau sama dengan 650 Gram

Maka pada himpunan crisp dapat disimpulkan bahwa :

1. Apabila beban terdeteksi 300 Gram, maka dapat dikatakan ringan (µ

Ringan

[300]=1).

2. Apabila beban terdeteksi 500 Gram, maka dapat dikatakan Tidak ringan (µ

Ringan

[500]=0).

Jika pada himpunan crisp, jumlah nilai keanggotaan hanya ada 2 (dua) kemungkinan, yaitu : 0 (nol) dan 1 (satu), maka untuk fuzzy set nilai keanggotaan terletak pada rentang 0 (nol) sampai 1 (satu).

Dalam pembentukan suatu fuzzy set terdapat beberapa hal yang perlu diketahui, yaitu :

1. Variabel fuzzy, merupakan variabel yang akan dibahas dan digunakan dalam suatu sistem fuzzy yang akan dibangun.

Contoh : usia, temperatur, dan lain-lain.

2. Himpunan Fuzzy (Fuzzy set), merupakan suatu kelompok yang memiliki kondisi atau keadaan tertentu dalam sekumpulan variabel fuzzy.

Contoh: Variabel temperatur memiliki himpunan Panas, Sejuk, dan Beku.

3. Semesta pembicaraan keseluruhan nilai yang diperbolehkan untuk dioperasikan dalam suatu variabel fuzzy. Semesta pembicaraan yang dimaksud merupakan himpunan bilangan riil yang senantiasa naik (bertambah) secara monoton dari kiri ke kanan atau sebaliknya. Nilai semesta pembicaraan dapat berupa bilangan positif maupun bilangan negatif. Contohnya: Semesta pembicaraan untuk variabel temperatur : [0 +∞].

4. Domain fuzzy set adalah keseluruhan nilai yang diizinkan dan dapat dioperasikan

dalam suatu fuzzy set. Seperti halnya mengenai semesta pembicaraan, domain

(28)

merupakan himpunan bilangan real yang senantiasa naik (bertambah) secara monoton dari kiri ke kanan. Nilai domain dapat berupa bilangan positif maupun negatif.

Contoh domain fuzzy set untuk variabel beban : a. Ringan = [0, 350]

b. Sedang = [350, 650]

c. Berat = [650, ∞].

Fuzzy set memiliki 2 (dua) atribut, yaitu:

1. Linguistik, yaitu penamaan suatu kelompok yang mewakili suatu keadaan atau kondisi tertentu dengan menggunakan bahasa alami, seperti: Ringan, Sedang, Berat.

2. Numeris, yaitu suatu nilai (angka) yang menunjukan ukuran dari suatu variable input, seperti: 200, 300, 450.

2.6. IF – THEN Rule

Rule merupakan sebuah struktur knowledge yang menghubungkan beberapa informasi ke informasi lainnya yang sudah diketahui sehingga dapat disimpulkan. Sebuah rule adalah suatu bentuk knowledge procedural. Sistem pakar berbasis rule merupakan sebuah program komputer untuk memproses masalah dari informasi spesifik yang terdapat dalam active memory dengan satu buah set rule dalam knowledge base, dengan menggunakan inference engine untuk menghasilkan sebuah informasi baru.

Struktur rule secara logikanya, menghubungkan satu atau lebih antiseden (yang disebut premis) terletak dalam bagian IF dengan satu maupun lebih konsekuen (disebut konklusi) yang terletak pada bagian THEN. Umumnya, sebuah rule dapat mempunyai premis jamak dihubungkan dengan pernyataan AND (konjungsi) pernyataan OR (disjungsi) atau kombinasi dari keduanya.

2.7. Metode Tsukamoto

Metode Tsukamoto merupakan penalaran monoton, setiap konsekuen pada aturan

yang berbentuk IF – THEN harus dipresentasi dengan himpunan fuzzy pada fungsi

keanggotaannya. Implikasi setiap aturan berbentuk implikasi (Sebab – Akibat).

(29)

Implikasi “Input-Output” yaitu antara anteseden dan konsekuen harus ada hubungannya. Kemudian untuk penentuan hasil (crisp solution) digunakan rumus defuzifikasi yang disebut juga dengan “Metode rata-rata terpusat” atau “Metode defuzzifikasi rata-rata terpusat (center average deffuzzyfier) (Sutojo, et al., 2011).

Bentuk model fuzzy Tsukamoto adalah:

If (X is A) and (Y is B) then (Z is C)

Persamaan untuk menghitung hasil inferensi metode Tsukamoto adalah:

. . . (2) Dimana:

αn = Derajat Keanggotaan dari Aturan ke- n zn = Nilai dari Aturan ke- n

Z = Nilai rata-rata terbobot

2.8. Komponen Prototype Robot Pengangkat Beban

Pada penelitian ini, penulis membuat prototype robot pengangkat beban dengan tujuan agar membantu menganalisis data yang diinginkan. Prototype dibuat sedemikian rupa dengan bentuk yang diinginkan agar bisa menggangkat beban dengan maksimal berat yang sudah diberi batasan. Terbuat dari akrilik sebagai alas dan badan robot, serta pemegang jepitan dan tuas pengangkat benda. Di dalam prototype terdiri dari arduino uno sebagai board penggerak robot. Sebuah sensor massa untuk mengukur berat beban yang akan di input. Terdapat 3 (tiga) mini servo yang mana 2 (dua) buah sebagai jepitan, dan 1 (satu) buah sebagai penopang benda. Terdapat juga 2 (dua) buah servo besar, yang mana 1 (satu) buah sebagai tuas pengangkat beban, dan 1 (satu) buah sebagai pemutar arah kiri dan kanan. Di dalam prototype juga terdapat motor driver yang digunakan untuk penggerak ban (motor DC).

2.8.1. Sensor Massa

Sensor massa (mass sensors) merupakan penilaian indikator beban yang akan di input

(ditimbang) dengan satuan gram. Pada penelitian ini, digunakan sensor massa dengan

(30)

kapasitas maksimal beban angkat sampai dengan 5 kilogram. Penentuan pengambilan maksimal beban angkat 5 Kg, yaitu kita harus mempertimbangkan beban maksimum yang dibatasi, wadah penopang, serta baut pemegangnya. Dikarenakan dalam penelitian ini dibatasi sampai dengan 900 Gr, maka tidak bisa menggunakan sensor massa kecil dengan jumlah maksimal beban 1 Kg. Gambar 2.4 menunjukkan sensor load cell yang akan digunakan :

Gambar 2.4 Sensor Massa Dengan Beban Maksimal 5 Kg (Budi, et al., 2018)

2.8.2. Motor Servo

Motor servo merupakan sebuah alat yang di dalamnya berisi complete gear, yang mana ujung gear nya dapat memutar derajat dari 0

0

sampai dengan 180

0

. Pada penelitian ini penggunaan motor servo digunakan untuk menjepit benda, dan sebagai tuas pengangkat benda, serta memutar arah benda yang akan di angkat dan diletakkan.

Untuk penjepit, digunakan 3 mini servo, yang mana tidak diperlukan tenaga

maksimum, difungsikan hanya mengenggam dan menjepit, tidak untuk ditarik

maupun diangkat. Sedangkan untuk mengangkat dan memutar, butuh tenaga tarik

yang besar, maka servo besar, dengan poros derajat dari 0

0

sampai dengan 270

0

.

Gambar 2.5 menunjukkan gambar servo yang digunakan :

(31)

Gambar 2.5 Mini Servo dan Servo Besar (Furqon, 2017)

2.8.3. Motor Driver

Motor driver yang akan digunakan dengan jenis seri L298N merupakan sebuah modul yang kompatibel untuk menggerakkan motor DC. Tersedia dari 4 port input, 2 port untuk bagian motor A (kiri) dan 2 port untuk bagian motor B (kanan). Masing – masing port ini dapat digunakan bersamaan untuk menggerakkan 2 (dua) buah motor secara bersamaan, ataupun digunakan untuk menggerakkan motor agar bergerak berlawanan arah. Modul ini juga bisa digunakan dalam pengkabelan seri maupun paralel. Pengkabelan seri untuk penggunaan lebih dari 1 (satu) input pada port, atau menggunakan pengkabelan paralalel dengan 1 port untuk 1 input. Pada penelitian ini, digunakan rangkaian seri, yang mana ban depan kiri dan ban belakang kiri disatukan agar dapat bergerak bersamaan. Hal serupa juga dilakukan untuk ban yang sebelah kanan. Gambar 2.6 menunjukkan motor driver yang digunakan.

Gambar 2.6 Motor Driver L298N

(Bobby, et al., 2015)

(32)

2.8.4. Motor DC

Motor DC merupakan sebuah gear box, yang mana di dalamnya terdapat kumparan yang akan bergerak apabila diberi tegangan 12V. Motor DC digunakan untuk penopang prototype yang pada ujung gear nya diberi roda. Penggunaan motor DC ini sebanyak 4 buah, 2 buah untuk roda depan, 2 buah untuk roda belakang. Digerakkan dengan sebuah motor driver L298N, dengan tujuan agar robot dapat berbelok ke kiri dan ke kanan, dan juga dapat maju maupun mundur. Gambar 2.7 menunjukkan motor DC yang digunakan komplit dengan rodanya.

Gambar 2.7 Motor DC Komplit Dengan Roda (Furqon, 2017)

Dari penjelasan komponen di atas, diberikan juga gambar prototype yang telah

dirakit dan dibentuk mengunakan 2 jenis akrilik, dengan ketebalan akrilik 5cm alas

tapak ban, dan ketebalan 3cm untuk alas komponen, ukuran panjang keseluruhan 30

cm x 23 cm x 12cm. Ukuran tersebut diukur dari ujung ke ujung, termasuk lengan

angkat dan tempat sensor massa. Berikut gambar prototype yang sudah dibuat, pada

Gambar 2.8 pada halaman selanjutnya.

(33)

Gambar 2.8 Prototype Robot Pengangkat Beban

2.9. Penelitian Terkait

Adapun rujukan dari penelitian yang terkait dalam pembahasan penelitian ini dapat dilihat pada Tabel 2.2.

Tabel 2.2 Penelitian Terkait

Penulis Judul penelitian Hasil penelitian

(Andi Adriansyah,

2010)

Perancangan Pengendali Robot Bergerak Berbasis Perilaku Menggunakan Particle Swarm Fuzzy Controller.

Dari hasil pengujian yang dapat dikatakan bahwa pengendali yang dirancang memiliki kemampuan yang baik untuk menyelesaikan tugasnya pada suatu lingkungan nyata.

(Asep Saefullah, Dewi Immaniar, Reza Amar Juliansah, 2014)

Sistem Kontrol Robot Pemindah Barang Menggunakan Aplikasi Android Berbasis Arduino Uno

Dari hasil pengujian yang telah dilakukan dengan koneksi

bluetooth HC-06 antara perangkat

dan user. Memindahkan barang

dari satu tempat, ke tempat

lainnya menggunakan sistematika

lengan robot, menggunakan 5

servo, dan max beban s/d 4 kg.

(34)

Tabel 2.2 Penelitian Terkait (Lanjutan)

Penulis Judul penelitian Hasil penelitian

(Nuryono Satya Widodo, 2009)

Penerapan Multi–

Mikrokontroler Pada Model robot mobil Berbasis Logika Fuzzy

Dari hasil pengujian yang telah dilakukan menunjukkan bahwa robot telah mampu bernavigasi pada ruangan dengan berbagai penghalang tanpa menabrak, namun ada kalanya memasuki ruangan yang sama secara berulang.

(Muhammad Furqon Siregar, 2017)

Pemanfaatan Android Sebagai Media Pengontrol Robot Pemindah Kubus Berbasis Arduino Uno

Dari Hasil pengujian, robot dapat dikontrol dari android untuk memindahkan kubus dari satu tempat ketempat yang lainnya, dengan batas jarak ±12 M.

(Grace Bobby, 2015)

Design and

Implementation of Balance Two Wheled Robot Based Microcontroller

Dari hasil pengujian kalman filter untuk menghilangkan noise pada sensor

accelerometer untuk mengurangi drift dari

gyroscope. Fuzzy logic untuk mengatur kestabilan sudut.

Pada penelitian (Andi Adriansyah), robot dapat bergerak dengan baik dan sempurna dikarenakan pengendali logika fuzzy yang parameternya ditata secara otomatis menggunakan PSO. Sehingga bergerak berdasarkan perilaku yang telah terkoordinasi secara individu maupun koordinasi perilaku sesuai dengan kondisi yang dihadapi secara efektif.

Pada penelitian (Asep), robot dapat bergerak halus dikarenakan menggunakan 5 servo pada lengan angkatnya, sehingga disaat berbelok maupun bergerak naik turun, dapat leluasa dalam mengambil barang. Robot dikendalikan melalui piranti android.

Tetapi penelitian ini mempunyai kekurangan, yaitu komunikasi masih menggunakan

bluetooth HC-06, yakni hanya dapat berkomunikasi satu arah serta jangkaunnya masih

pendek.

(35)

Pada penelitian (Nuryono), menggunakan kendali multi-mikrokontroler berbasis logika fuzzy dengan pendekatan berbasis perilaku. Kelebihannya adalah robot mampu bergerak tanpa ada benturan, dan kembali ke tempat semula.

Sementara pada penelitian (Furqon), sistem yang dirancang mempunyai kelebihan di pengendali (remote) sudah dilakukan menggunakan android dan komunikasi menggunakan bluetooth HC-05 dua arah, serta mencapai jarak ±12 meter. Kekurangan pada penelitian ini adalah robot belum dapat mengetahui berapa berat yang akan diangkat, serta belum dapat menganalisis klasifikasi beban yang akan diangkatnya.

Penelitian (Grace Bobby) memiliki kelebihan tingkat kestabilan dan control ability. Robot menggunakan sensor accelerometer dan gyroscope untuk akurat pembacaan kemiringan dan kestabilan agar tetap tegak lurus. Kekurangan pada penelitian ini adalah terdapat gangguan jika diuji dengan 6 buah input dan menggunakan banyak rules, keseimbangan sulit didapat dalam jangka waktu yang cepat.

Dari penelitian yang terkait, penulis ingin mengembangkan kekurangan pada

penelitian (Muhammad Furqon) dengan menambahkan metode fuzzy logic terhadap

kemiringan servo, agar implementasi prototype dapat mengetahui bobot benda yang

akan diangkat tanpa terjatuh.

(36)

BAB 3

METODOLOGI PENELITIAN

3.1 Tahapan Penelitian

Tahapan penelitian yang akan dilaksanakan terlihat pada Gambar 3.1.

Gambar 3.1. Alur Tahapan Penelitian

Tahapan awal adalah menentukan latar belakang kenapa penelitian ini dilakukan, merumuskan beberapa hal yang dikerjakan serta tujuan yang akan dicapai. Setelah menjabarkan dari isi latar belakang, maka dilakukan studi literatur agar memperdalam pemahaman mengenai metode fuzzy logic, serta tahapan – tahapan yang yang harus dilakukan untuk menganalisis metode fuzzy logic untuk robot pengangkat beban. Studi literatur diambil dari berbagai sumber–sumber kepustakaan, baik berupa buku, jurnal lokal maupun jurnal internasional, prosiding, tesis yang mengacu pada ilmu ataupun

Penentuan Masalah dan Tujuan Studi Penelitian yang akan

digunakan

Pembuatan Prototype Implementasi Fuzzy Logic

Penentuan Rule

Evaluasi Pemaparan Mulai

Selesai

(37)

metode, dan juga bahan pendukung lainnya. Penulis juga berkonsultasi dengan dosen pembimbing agar penulisan tesis ini dapat dibimbing dan diarahkan.

Tahapan kedua yaitu pembuatan prototype sebagai pendukung penganalisa metode fuzzy logic ini. Dibuat sedemikian rupa menggunakan papan akrilik berukuran 5mm dan 3 mm, yang didalamnya terdapat komponen pendukung serta penggerak untuk tuas jepit dan tuas pengangkatan beban. Tahap ketiga yaitu implementasi metode fuzzy logic terhadap arduino uno. Pada prototype, ditanamkan program serta penghitungan mengenai fuzzy logic model tsukamoto. Setelah prototype di rancang, maka dibentuk sebuah rule terhadap servo untuk menganalisis pergerakan derajat kenaikan setiap percobaan input beban. Langkah terakhir yaitu evaluasi pemaparan, penghitungan secara manual, maupun penghitungan secara terstruktur pada program arduino uno.

Setelah dipaparkan, maka dibandingkan semua hasil percobaannya. Setelah dilakukan perbandingan, maka tahapan terakhir ialah mencari persen derajat rata-rata kemiringan keempat buah servo tersebut. Dengan tujuan agar dapat diambil kesimpulan keberhasilan pengujian analisis penelitian ini.

Flowchart terbagi 2 (dua) jenis, yaitu dengan menggunakan metode fuzzy logic,

atau tidak menggunakan metode fuzzy logic. Terlihat pada rule pengerjaan dan

flowchart sangat berbeda, yang mana terlihat terstruktur dengan menggunakan metode

ini, dimana sistem menggunakan pengangkatan beban terhadap servo dengan

menggunakan metode fuzzy logic. Berikut ditampilkan flowchart tanpa fuzzy terlebih

dahulu, yang mana terlihat pada gambar 3.2. di halaman selanjutnya.

(38)

Gambar 3.2 Flowchart Pergerakan Tanpa Metode Fuzzy Logic

Pada gambar di atas, terlihat proses kerja dimulai dari permulaan hidup prototype robot, lalu diletakkan benda secara acak tanpa ditimbang terlebih dahulu. Pemrosesan diatur dengan waktu tunda (delay), diberi jarak antara waktu input manual dengan peletakan barang sewaktu proses kerja program arduino uno. Hal ini dibuat agar terlihat ada perbedaan antara menggunakan metode dengan tidak menggunakan metode fuzzy logic. Perbedaan tersebut terletak pada keputusan pengambilan pergerakan servo terhadap input beban acak.

Setelah dibuat perancangan diagram alir pengujian tanpa metode fuzzy logic,

penulis juga membuat rancangan flowchart pengujian dengan menggunakan metode

fuzzy. Terdapat perbedaan dengan flowchart sebelumnya, yang mana flowchart fuzzy

diutamakan untuk menimbang beban dengan input benda menggunakan sensor load

cell. Setelah itu, dibuat klasifikasi (fuzzifikasi) data beban yang telah ditimbang,

dengan pembulatan class yang sudah dibuat oleh penulis. Yang mana gambar

flowchart tertera pada gambar 3.3 di halaman berikut ini:

(39)

Gambar 3.3 Diagram Alir Penentuan Berat Beban dengan Fuzzy Logic

Pada Gambar 3.3 di atas merupakan alur penyelesaian kerja dari metode fuzzy logic terhadap pengangkatan poros beban. Metode tersebut dimulai dengan input beban dari bobot benda, diambil dari indikator sensor massa. Setelah itu lakukan proses fuzzifikasi untuk penentuan fungsi keanggotaan derajat kemiringan servo jepit dan servo pengangkatan. Setelah dibuat klasifikasi bebannya, maka diambil proses kondisi yang telah difuzzifikasi menjadi perintah pergerakan servo, serta penganalisis satuan beratnya.

3.2 Analisa Kebutuhan

3.2.1. Peletakan Sensor Massa Terhadap Prototype

Skema peletakan sensor terhadap prototype sangat berpengaruh dan harus

diperhatikan, dikarenakan peletakan jangan sampai mengganggu kestabilan dari robot

tersebut. Peletakan sensor diletakkan di dekat tuas pengangkat dan jepitan, dengan

tujuan agar pengambilan manual beban tersebut mudah serta tidak banyak memakan

(40)

waktu, sebab pada prototype masih menggunakan sistem manual, jadi penulis bermain di waktu tunda setelah input beban dari benda yang telah ditimbang.

3.2.2. Sistem Pengukuran Sensor Massa

Sistem pengukuran sensor yakni dengan meletakkan beban di atas akrilik yang sudah dibuat dan juga sudah ditentukan bentuknya. Sistem pengukurannya dengan nilai desimal, input diperoleh dan pembacaan pemrosesan dalam arduino uno. Setelah di dapat nilai yang akurat, maka pengiriman langsung ke IC untuk perintah selanjutnya pada pergerakan perintah jepit dan angkat.

3.3. Identifikasi Variabel

Untuk mengidentifikasi fungsi keanggotaan fuzzy inferensi system, peneliti membutuhkan sebuah data masukan, yakni dari sensor massa (load cell). Sensor massa sebagai variabel input, dan satu variabel output. Pada variabel beban, data akan digunakan sebagai parameter fungsi keanggotaan fuzzy. Terdiri dari 3 (tiga) atribut linguistik, yaitu ringan (R), Sedang (S), dan Berat (B).

Variabel output terdiri persentasi pergerakan dari derajat 4 (empat) buah motor servo sebagai penggerak jepit dan pergerakan pengangkatan tuas. Dimana data tersebut akan digunakan sebagai fungsi keanggotaan fuzzy yang terdiri dari 3 (tiga) atribut linguistik, yaitu Low (L), Middle (M), High (H).

3.4 Rancang Fungsi Keanggotaan 3.4.1 Variabel Beban

Design fungsi keanggotaan fuzzy untuk variabel beban, terdiri dari 3 atribut linguistik,

yaitu dengan nilai R (0, 100, 200, 300), S (200, 300, 400, 500, 600), B (500, 600, 700,

800, 900).

(41)

Gambar 3.4 Desain Fungsi Keanggotaan Variabel Beban

Dari gambar 3.4 di atas, maka derajat keanggotaan variabel beban dapat dihitung dengan rumus himpunan berikut ini :

Himpunan untuk variabel Beban

(R)

:

µBeban

r

[x] = . . . .(3)

Himpunan untuk variabel Beban

(S)

:

µBeban

s

[x] = . . . .(4)

Himpunan untuk variabel Beban

(B)

:

µBeban

b

[x] = . . . .(5)

(42)

3.5 Aturan Fuzzy

Aturan fuzzy yang dibuat pada penelitian ini didefinisikan untuk fuzzy inferensi sistem Tsukamoto. terdapat sebanyak 3 aturan untuk setiap servo, yang ditampilkan pada tabel - tabel di bawah ini :

Tabel 3.1 Daftar Aturan Fuzzy Pada Servo 1 Dan 2

RULE BEBAN SERVO 1, 2

1 IF RINGAN THEN LOW

2 IF SEDANG THEN MIDDLE

3 IF BERAT THEN HIGH

Tabel 3.2 Daftar Aturan Fuzzy Pada Servo 3

RULE BEBAN SERVO 3

1 IF RINGAN THEN LOW

2 IF SEDANG THEN HIGH

3 IF BERAT THEN HIGH

Tabel 3.3 Daftar Aturan Fuzzy Pada Servo 4

RULE BEBAN SERVO 4

1 IF RINGAN THEN MIDDLE

3 IF SEDANG THEN MIDDLE

6 IF BERAT THEN HIGH

Peningkatan derajat servo : 1. Low : 20%

2. Middle : 30%

3. High : 40%

(43)

BAB 4

HASIL DAN PEMBAHASAN

4.1. Pendahuluan

Pada penelitian ini akan dicoba beberapa pengujian serta ditampilkan hasil penelitian terhadap derajat servo jepit dan tuas angkat dengan menggunakan metode fuzzy logic dengan model Tsukamoto. Pada pengujian kontrol derajat dengan logika fuzzy, digunakan variabel input dan variabel output, yang mana terdiri dari beban yang telah di timbang. Data input beban diperoleh dari sensor massa (load cell). Berikut ini adalah sebagian dari data uji beban terhadap sensor load cell yang mana terlihat pada Tabel 4.1.

Tabel 4.1 Data Input Beban Data Input (Gram)

0 9 18 27 36 45 54 63 72

1 10 19 28 37 46 55 64 73

2 11 20 29 38 47 56 65 74

3 12 21 30 39 48 57 66 75

4 13 22 31 40 49 58 67 76

5 14 23 32 41 50 59 68 77

6 15 24 33 42 51 60 69 78

7 16 25 34 43 52 61 70 79

8 17 26 35 44 53 62 71 80

4.2. Pengujian Pertama

Pada pengujian pertama ini, nilai yang diambil dalam rentang 0-100. Untuk data yang

lebih lengkap, dapat dilihat pada lampiran akhir tesis ini. Contoh pengujian, penulis

meencoba pada beban 20. Sebelum melakukan inferensi, kita harus mencari derajat

(44)

keanggotaan nilai pada variabel di setiap himpunan fuzzy, seperti dijelaskan di bawah ini:

Variabel Input Beban µ

RINGAN

(20) = 1 µ

SEDANG

(20) = 0 µ

BERAT

(20) = 0

Setelah mendapat nilai keanggotaan, pada pengujian pertama yg dilakukan adalah proses fuzzyfikasi. Maka langkah selanjutnya adalah proses penghitungan yang dilakukan dengan menggunakan rule yang telah ditentukan sebelumnya. Prosesnya sebagai berikut ini:

Rule Pada Servo 1 Dan 2

[R1] IF Beban = RINGAN THEN Servo = LOW α-predikat 1 = min µ

RINGAN

(20)

= min (1)

= 1

[R2] IF Beban = SEDANG THEN Servo = MIDDLE α-predikat 2 = min µ

SEDANG

(20)

= min (0)

= 0

[R3] IF Beban = BERAT THEN Servo = HIGH α-predikat 3 = min µ

BERAT

(20)

= min (0)

= 0

[Z1] Zmax – α-predikat (Zmax – Zmin) = 40 – 1 . (40 – 20)

= 40 – 20 = 20

[Z2] Zmax – α-predikat (Zmax – Zmin) = 40 – 0 . (40 - 30)

= 40 – 0 = 40

(45)

[Z3] Zmax – α-predikat (Zmax – Zmin) = 40 – 0 . (40 - 40)

= 40 – 0 = 40

Proses Defuzzyfikasi Pada Servo 1 Dan 2

Setelah proses perhitungan dengan menggunakan rule yang sudah ditentukan, maka tahapan selanjutnya ialah proses defuzzyfikasi. Yang mana proses defuzzyfikasi menggunakan inferensi model Tsukamoto pada pengujian pertama terhadap servo sebagai berikut:

Z Total = (αp1 * Z1) + (αp2 * Z2) + (αp3 * Z3) (α-p1 + α-p2 + α-p3)

= (1 * 20) + (0 * 40) + (0 * 40) (1 + 0 + 0)

= 20 = 20 1

Dari perhitungan pengujian pertama proses defuzzyfikasi pada servo 1 dan 2, dapat dilihat kenaikan derajat servonya adalah 20 % dari kecepatan awal.

Rule Pada Servo 3

[R1] IF Beban = RINGAN THEN Servo = LOW α-predikat 1 = min µ

RINGAN

(20)

= min (1)

= 1

[R2] IF Beban = SEDANG THEN Servo = HIGH α-predikat 2 = min µ

SEDANG

(20)

= min (0)

= 0

[R3] IF Beban = BERAT THEN Servo = HIGH α-predikat 3 = min µ

BERAT

(20)

= min (0) = 0

(46)

[Z1] Zmax – α-predikat (Zmax – Zmin) = 40 – 1 . (40 – 20)

= 40 – 20 = 20

[Z2] Zmax – α-predikat (Zmax – Zmin) = 40 – 0 . (40 - 40)

= 40 – 0 = 40

[Z3] Zmax – α-predikat (Zmax – Zmin) = 40 – 0 . (40 - 40)

= 40 – 0 = 40

Proses Defuzzyfikasi Pada Servo 3

Setelah proses perhitungan dengan menggunakan rule yang sudah ditentukan, maka tahapan selanjutnya ialah proses defuzzyfikasi. Yang mana proses defuzzyfikasi menggunakan inferensi model Tsukamoto pada pengujian pertama terhadap servo 3 sebagai berikut:

Z Total = (αp1 * Z1) + (αp2 * Z2) + (αp3 * Z3) (α-p1 + α-p2 + α-p3)

= (1 * 20) + (0 * 40) + (0 * 40) (1 + 0 + 0)

= 20 = 20 1

Dari perhitungan pengujian pertama proses defuzzyfikasi pada servo 3, dapat dilihat kenaikan derajat servonya adalah 20 % dari kecepatan awal.

Rule Pada Servo 4

[R1] IF Beban = RINGAN THEN Servo 4 = MIDDLE α-predikat 1 = min µ

RINGAN

(20)

= min (1)

= 1

(47)

[R2] IF Beban = SEDANG THEN Servo 4= MIDDLE α-predikat 2 = min µ

SEDANG

(20)

= min (0)

= 0

[R3] IF Beban = BERAT THEN Servo 4 = HIGH α-predikat 3 = min µ

BERAT

(20)

= min (0)

= 0

[Z1] Zmax – α-predikat (Zmax – Zmin) = 40 – 1 . (40 – 30)

= 40 – 10 = 30

[Z2] Zmax – α-predikat (Zmax – Zmin) = 40 – 0 . (40 - 30)

= 40 – 0 = 40

[Z3] Zmax – α-predikat (Zmax – Zmin) = 40 – 0 . (40 - 40)

= 40 – 0 = 40

Proses Defuzzyfikasi Pada Servo 4

Setelah proses perhitungan dengan menggunakan rule yang sudah ditentukan, maka tahapan selanjutnya ialah proses defuzzyfikasi. Yang mana proses defuzzyfikasi menggunakan inferensi model Tsukamoto pada pengujian pertama terhadap servo sebagai berikut:

Z Total = (αp1 * Z1) + (αp2 * Z2) + (αp3 * Z3) (α-p1 + α-p2 + α-p3)

= (1 * 30) + (0 * 40) + (0 * 40) (1 + 0 + 0)

= 30 = 30

1

(48)

Dari perhitungan pengujian pertama proses defuzzyfikasi pada servo 4, dapat dilihat kenaikan derajat servonya adalah 30 % dari kecepatan awal.

4.3. Pengujian Kedua

Pada pengujian kedua ini, nilai input beban diambil dalam rentang 100 – 900 Gr.

Contoh pengujian, penulis mencoba pada beban 200 Gr. Sebelum melakukan inferensi, kita harus mencari derajat keanggotaan nilai pada variabel di setiap himpunan fuzzy pada pengujian kedua, seperti dijelaskan di bawah ini:

Variabel Input Beban

µ

RINGAN

(250) = 300 – x = 300 – 250 = 50 = 0,5 300–200 100 100

µ

SEDANG

(250) = x – 200 = 250 – 200 = 50 = 0,25 400–200 200 200

µ

BERAT

(250) = 0

Setelah mendapat nilai keanggotaan, pada pengujian kedua yg dilakukan adalah proses fuzzyfikasi. Maka langkah selanjutnya adalah proses penghitungan yang dilakukan dengan menggunakan rule yang telah ditentukan sebelumnya. Prosesnya sebagai berikut ini:

Rule Pada Servo 1 Dan 2

[R1] IF Beban = RINGAN THEN Servo = LOW α-predikat 1 = min µ

RINGAN

(250)

= min (0,5)

= 0,5

[R2] IF Beban = SEDANG THEN Servo = MIDDLE α-predikat 2 = min µ

SEDANG

(250)

= min (0,25)

= 0,25

(49)

[R3] IF Beban = BERAT THEN Servo = HIGH α-predikat 3 = min µ

BERAT

(250)

= min (0)

= 0

[Z1] Zmax – α-predikat (Zmax – Zmin) = 40 – 0,5 . (40 – 20)

= 40 – 10 = 30

[Z2] Zmax – α-predikat (Zmax – Zmin) = 40 – 0,25 . (40 - 30)

= 40 – 2,5 = 37,5

[Z3] Zmax – α-predikat (Zmax – Zmin) = 40 – 0 . (40 - 40)

= 40 – 0 = 40

Proses Defuzzyfikasi Pada Servo 1 Dan 2

Setelah proses perhitungan dengan menggunakan rule yang sudah ditentukan, maka tahapan selanjutnya ialah proses defuzzyfikasi. Yang mana proses defuzzyfikasi menggunakan inferensi model Tsukamoto pada pengujian kedua terhadap servo sebagai berikut:

Z Total = (αp1 * Z1) + (αp2 * Z2) + (αp3 * Z3) (α-p1 + α-p2 + α-p3)

= (0,5 * 30) + (0,25 * 37,5) + (0 * 40) (0,5 + 0,25 + 0)

= 15 + 9,37 + 0 = 24,37 = 32,49 0,75 0,75

Dari perhitungan pengujian kedua proses defuzzyfikasi pada servo 1 dan 2, dapat

dilihat kenaikan derajat servonya adalah 32,49 % dari kecepatan awal.

(50)

Rule Pada Servo 3

[R1] IF Beban = RINGAN THEN Servo 3 = LOW α-predikat 1 = min µ

RINGAN

(250)

= min (0,5)

= 0,5

[R2] IF Beban = SEDANG THEN Servo 3 = HIGH α-predikat 2 = min µ

SEDANG

(250)

= min (0,25)

= 0,25

[R3] IF Beban = BERAT THEN Servo 3 = HIGH α-predikat 3 = min µ

BERAT

(250)

= min (0)

= 0

[Z1] Zmax – α-predikat (Zmax – Zmin) = 40 – 0,5 . (40 – 20)

= 40 – 10 = 30

[Z2] Zmax – α-predikat (Zmax – Zmin) = 40 – 0,25 . (40 - 40)

= 40 – 0 = 40

[Z3] Zmax – α-predikat (Zmax – Zmin) = 40 – 0 . (40 - 40)

= 40 – 0 = 40

Proses Defuzzyfikasi Pada Servo 3

Setelah proses perhitungan dengan menggunakan rule yang sudah ditentukan, maka tahapan selanjutnya ialah proses defuzzyfikasi. Yang mana proses defuzzyfikasi menggunakan inferensi model Tsukamoto pada pengujian kedua terhadap servo sebagai berikut:

Z Total = (αp1 * Z1) + (αp2 * Z2) + (αp3 * Z3)

(α-p1 + α-p2 + α-p3)

(51)

= (0,5 * 30) + (0,25 * 40) + (0 * 40) (0,5 + 0,25 + 0)

= 15 + 10 + 0 = 25 = 33,33 0,75 0,75

Dari perhitungan pengujian kedua proses defuzzyfikasi pada servo 3, dapat dilihat kenaikan derajat servonya adalah 33,3 % dari kecepatan awal.

Rule Pada Servo 4

[R1] IF Beban = RINGAN THEN Servo 4 = MIDDLE α-predikat 1 = min µ

RINGAN

(250)

= min (0,5)

= 0,5

[R2] IF Beban = SEDANG THEN Servo 4 = MIDDLE α-predikat 2 = min µ

SEDANG

(250)

= min (0,25)

= 0,25

[R3] IF Beban = BERAT THEN Servo 4 = HIGH α-predikat 3 = min µ

BERAT

(250)

= min (0)

= 0

[Z1] Zmax – α-predikat (Zmax – Zmin) = 40 – 0,5 . (40 – 30)

= 40 – 5 = 35

[Z2] Zmax – α-predikat (Zmax – Zmin) = 40 – 0,25 . (40 - 30)

= 40 – 2,5 = 37,5

[Z3] Zmax – α-predikat (Zmax – Zmin) = 40 – 0 . (40 - 40)

= 40 – 0 = 40

Referensi

Garis besar

Dokumen terkait

Kepada orang spesial Achmad Affandi yang telah menjadi sahabat, teman, kakak dll dalam memberikan doa, semangat dan dukungan, selalu mendengarkan keluh kesahku

Berdasarkan hasil tabel uji analisis koefisien determinasi, menunjukan nilai koefisien determinasi dari Rsquare yaitu sebesar 0,575 atau sama dengan 57,5%, angka

Pengalaman dan pengetahuan baru mengenai budaya kota yang mereka lihat ketika mereka berinteraksi dengan masyarakat kota itu sendiri, membawa perubahan pada gaya hidup

Sejarah baru mulai diukir oleh Bank Aceh melalui hasil Rapat Umum Pemegang Saham Luar Biasa (RUPSLB). Tanggal 25 Mei 2015 bahwa Bank Aceh melakukan perubahan

Dari hasil pemanfaatan tongkol jagung untuk substitusi pembuatan batu bata, perlakuan ukuran butir lolos &gt;60 mesh dengan penambahan sampai 12,5% dapat digunakan

Sebagai pengganti bahan baku pembuat kertas Beberapa Mahasiswa Fakultas Teknik Pertanian (FTP) UGM berhasil memanfaatkan limbah tongkol jagung sebagai sumber karbon untuk

Jumlah kasus HIV/AIDS yang dilaporkan di Kota Pekalongan pada tahun 2013 yaitu 3 penderita HIV baru yang semuanya berjenis kelamin perempuan dan 21 penderita AIDS

Hasil penelitian menunjukan bahwa pengaruh pemberian dosis hormon tiroksin terhadap pertumbuhan (panjang dan bobot), sintasan benih ikan gurami terbaik diperoleh pada