TESIS
DODY HIDAYAT
137038040
TESIS
DODY HIDAYAT
137038040
PENGESAHAN
KomisiPembimbing :
Pembimbing 2 Pembimbing 1
PERNYATAAN
TESIS
Saya mengakui bahwa tesis ini adalah hasil karya saya sendiri, kecuali beberapa
Dody Hidayat
136038040
Sebagai sivitas akademika Universitas Sumatera Utara, saya yang bertanda tangan di
bawah ini:
Beserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas Royalti Non-
Eksklusif ini, Universitas Sumatera Utara berhak menyimpan, mengalih media,
memformat, mengelolah dalam bentuk data-base, 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.
Dody Hidayat
137038040
RIWAYAT HIDUP
DATA PRIBADI
Telepon/Fax/HP : -/-/081375349300
E-mail : hidayatdody91@gmail.com
DATA PENDIDIKAN
Alhamdulillah puji dan syukur penulis ucapkan sangat mendalam kehadirat Allah
SWT, yang telah memberikan rahmat dan karunianya kepada penulis sehingga tulisan
ilmiah dalam bentuk tesis ini dapat di selesaikan tepat pada waktunya.
Penulisan tesis ini pada dasarnya adalah kewajiban akhir dari perkuliahan
untuk memenuhi salah satu syarat memperoleh gelar Sarjana program Studi Strata
Dua (S-2) Teknik Informatika Universitas Sumatera Utara
Dalam menyelesaikan tesis ini, penulis banyak mendapat pelajaran yang besar
baik berupa saran maupun nasehat dari berbagai pihak terutama dari dosen
pembimbing dan dosen pembanding, sehingga pengerjaan tesis ini dapat diselesaikan
dengan baik. Tidak lepas dari dukungan orang tua, yang juga telah banyak
memberikan bantuan sehingga penulis dapat sampai pada tahap penyelesaian tesis ini.
Untuk itu penulis ingin menyampaikan ucapan terima kasih yang sebesar-
besarnya kepada :
1. Kedua Orangtua penulis Ayahanda H.Syahruddin dan Ibunda Hj. Nurasni
Sembiring tercinta yang telah memberikan kasih sayangnya, doa yang tak
pernah putus serta dorongan moril maupun materil kepada penulis sehingga
dapat menyelesaikan tesis ini dengan baik.
2. Bapak Prof. Dr. Muhammad Zarlis, selaku Ketua Program Studi Pasca sarjana
Teknik Informatika Fakultas Ilmu Komputer dan Teknologi Informasi
Universitas Sumatera Utara Medan.
3. Bapak Prof. Dr. Tulus Selaku Dosen Pembimbing I yang telah bersedia
memberikan bimbingan serta pengarahan hingga selesainya penulisan tesis ini.
4. Bapak Prof. Dr. Drs. Iryanto, M.Si Selaku Dosen Pembimbing II yang telah
bersedia memberikan bimbingan serta pengarahan hingga selesainya penuliasn
tesis ini.
5. Bapak dan Ibu Dosen Pembanding/Penguji yang telah memberikan saran
untuk perbaikan dan penyelesaian tesis ini.
6. Bapak dan Ibu Dosen yang telah memberikan materi perkuliahan dan ilmu
pengetahuan selama penulis menyelesaikan Program Studi Pasca sarjana
Teknik Informatika.
7. Segenap sivitas akademika Program Studi Pasca sarjana Teknik Informatika
Sumatera Utara.
8. Teman – teman seperjuangan Angkatan 2013 Kom-C yang telah memberikan
dukungan dalam penyelesaian tesis ini.
9. Kakak penulis dr. Lidya Rahmatika dan sahabat-sahabat penulis yang tidak
dapat penulis sebutkan satu persartu yang telah banyak memberikan dorongan
dan bantuan kepada penulis sehingga dapat menyelesaikan tesis ini.
Penulis menyadari bahwa masih ada kekurangan dalam penulisan tesis ini.
Untuk itu, penulis mengharapkan kritik dan saran dari pembaca demi kesempurnaan
penulisan tesis ini.
Akhir kata penulis berharap semoga karya ilmiah ini dapat bermanfaat bagi
semua pihak, khususnya dalam bidang pendidikan. Penulis menyadari bahwa masih
ada kekurangan dalam penulisan tesis ini, untuk itu, penulis mengharapkan kritik dan
saran dari pembaca demi kesempurnaan tulisan ini.
Dody Hidayat
137038040
ABSTRAK
Quadcopter merupakan pesawat tanpa awak yang memiliki empat buah motor
penggerak yang setiap motornya dilengkapi dengan propeller (baling-baling).
Pengendalian kestabilan terbang quadcopter sangat penting dilakukan agar
performansi quadcopter dapat dicapai dengan optimal. Beberapa penelitian untuk
kesetabilan quadcopter yang sudah dilakukan dengan beberapa metode yakni dengan
metode control Proposional, Integral, Derivatif (PID), control fuzzy dengan inferensi
Sugeno dan Mamdani. Permasalah umum yang terjadi pada quadcopter adalah tentang
kestabilan terbang quadcopter tersebut. Kestabilan pada quadcopter dapat terganggu
karena daya angkat yang berbeda pada keempat motor penggeraknya yang disebabkan
oleh berbagai faktor diantaranya adalah tekanan udara yang berbeda yang
menyebabkan terjadinya kemiringan-kemiringan pada sumbu x dan y dan adanya
beban yang dimiliki oleh quadcopter. Untuk menyelesaikan permasalahan tersebut
dibutuhkan kontrol kestabilan dalam menentukan kecepatan motor penggerak
quadcopter tersebut. Penelitian ini bertujuan mendapatkan konfigurasi kontrol
kestabilan yang optimal pada quadcopter setelah diterapkan metode fuzzy logic
inferensi Tsukamoto. Hasil penelitian ini menyatakan metode fuzzy logic inferensi
Tsukamoto dapat memberikan tingkat akurasi yang baik dalam menentukan
kestabilan quadcopter yang dinilai dari input beban, kemiringan sumbu x dan
kemiringan sumbu y sehingga hasil yang dicapai dapat memberikan kontrol
pertambahan kecepatan keempat motor penggerak quadcopter tersebut.
Kata kunci: Quadcopter, Kestabilan, Fuzzy Logic, Tsukamoto
ABSTRACT
Quadcopter an unmanned aircraft that has four motor that each bike is equipped with a
propeller (propeller). Stability control quadcopter fly very important to do so
performance can be achieved with optimal quadcopter. Some studies for stability
quadcopter has been done by several methods namely the control method
Proportional, Integral, Derivative (PID) control Sugeno fuzzy inference and
Mamdani. Common problems that occur in quadcopter is about the stability of the
quadcopter fly. The stability of the quadcopter can be disrupted due to the different lift
on the fourth driving motor caused by various factors including the different air
pressure that caused the tilts on the x-axis and y and the burden of which is owned by
quadcopter. To resolve these problems needed stability control in determining the
speed of the motor of the quadcopter. This study aims to obtain an optimal
configuration stability control on quadcopter after application of fuzzy logic inference
method Tsukamoto. Results of this study states fuzzy logic inference Tsukamoto
method can provide a good degree of accuracy in determining the stability quadcopter
assessed from the input load, the slope of the x-axis and y-axis tilt so that the results
achieved can provide gain control of the fourth speed of the drive motor quadcopter.
DAFTAR ISI
PENGESAHAN i
PERNYATAAN ORISANILITAS ii
PERSETUJUAN PUBLIKASI iii
PANITIA PENGUJI iv
RIWAYAT HIDUP v
UCAPAN TERIMAKASIH vi
ABSTRAK viii
ABSTRACT ix
DAFTAR ISI x
DAFTAR TABEL xiii
DAFTAR GAMBAR xiv
BAB I PENDAHULUAN 1
1.1. Latar Belakang 1
1.2. Perumusan Masalah 3
1.3. Batasan Masalah 3
1.4. Tujuan Penelitian 3
1.5. Manfaat Penelitian 3
BAB II TINJAUAN PUSTAKA 4
2.1. Quadcopter 4
2.2. Fuzzy Logic 5
2.2.1. Basis Pengetahuan Fuzzy 6
2.2.2. Fuzzyfikasi 6
2.2.3. Proses Inferensi 6
2.2.4. Defuzzifikasi 7
2.3. Fungsi Keanggotaan 7
5.1. Kesimpulan 67
5.2. Saran 67
DAFTAR PUSTAKA 68
LAMPIRAN
DAFTAR TABEL
DAFTAR GAMBAR
BAB 1
PENDAHULUAN
Quadcopter merupakan pesawat tanpa awak yang memiliki empat buah motor
penggerak yang setiap motornya dilengkapi dengan propeller (baling-baling).
Quadcopter dapat terbang mandiri dan juga dapat dikontrol jarak jauh. Keunggulan
dari quadcopter adalah dapat terbang dan bermanuver secara bebas serta ukurannya
yang dapat didesain sesuai dengan kebutuhannya. Keunggulan ini membuat
quadcopter memiliki kegunaan yang amat banyak dan strategis. Salah satu kegunaan
dari quadcopter adalah sebagai robot pengintai.
Permasalah umum yang sering terjadi pada quadcopter adalah tentang kontrol
kestabilan terbang quadcopter tersebut. Kestabilan pada quadcopter dapat terganggu
karena daya angkat yang berbeda pada keempat motor penggeraknya yang disebabkan
oleh berbagai faktor diantaranya tekanan udara yang berbeda, beban yang berayun dan
distribusi beban yang tidak sama pada keempat motornya. Untuk mencapai tujuan
terbang yang optimal maka stabilisasi terbang quadcopter perlu dipertahankan.
Pengendalian kesetabilan terbang quadcopter sangat penting dilakukan agar
performansi quadcopter dapat dicapai dengan optimal. Beberapa penelitian untuk
kesetabilan quadcopter sudah dilakukan dengan beberapa metode yakni dengan
metode control Proposional, Integral, Derivatif (PID), control fuzzy dengan inferensi
sugeno dan mamdani.
Penelitian yang dilakukan oleh A. Hendriawan pada tahun 2012. Penelitian
tersebut menganalisa sistem control altitude pada Unmanned Aerial vehicle (UAV)
model quadcopter dengan metode PID. Hasilnya mendapatkan control PID yang
bekerja dengan baik (Hendriawan, et al., 2012).
Dari latar belakang adapun rumusan masalah adalah menerapkan metode fuzzy logic
dalam pengontrolan kestabilan quadcopter.
Agar pembahasan lebih terarah dan tidak menyimpang dari pokok masalah, maka
penulis memberikan batasan-batasan pembahasan dalam penelitian ini yaitu:
1. Menambah ilmu pengetahuan dan wawasan tentang sistem kontrol dan metode
fuzzy logic .
2. Kontrol kestabilan quadcopter dengan penerapan metode fuzzy logic serta
kombinasi sensor accelerometer dan gyroscope menghasilkan kontribusi
sebagai acuan penelitian untuk pengembangan lebih lanjut .
BAB II
TINJAUAN PUSTAKA
2.1 Quadcopter
Quadcopter adalah pengembangan dari helicopter yang hanya memiliki sebuah rotor,
teknologi yang terdapat pada quadcopter menggunakan sinkronisasi antara keempat
rotor yang dikonfigurasikan dalam bentuk frame plus (+) dimana rotor depan dan
belakang berputar searah jarum jam, sedangkan rotor sebelah kanan dan kiri bergerak
berlawanan arah jarum jam. Quadcopterdapat melakukan take off dan landing secara
vertikal. Dua pasang baling-baling (1,4) dan (2,3) berputar dengan arah yang
berlawanan (Kardono, AK, & Fatoni, 2012).
Logika fuzzy yang pertama kali diperkenalkan oleh Lotfi A. Zadeh, memiliki derajat
keanggotaan dalam rentang 0 (nol) hingga 1 (satu), Berbeda dengan system kontrol
konvesional yang mendefinisikan sesuatu dengan kategori benar dan salah (1 atau 0)
selain nilai itu akan dibulatkan atau diabaikan, logika fuzzy disini dapat
mendefinisikan nilai dengan beberapa kategori. Seperti misalkan dalam bahasa
keseharian manusia yang menyatakan sesuatu dengan kata “sangat banyak”,
“banyak”, “sangat sedikit”, “sangat panas”, “sangat dingin” dan seterusnya. Maka
nanti 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 orang menggunakan logika fuzzy, antara lain
1. Konsep logika fuzzy mudah dimengerti. Karena logika fuzzy menggunakan dasar
teori himpunan, maka konsep matematis yang mendasari penalaran fuzzy tersebut
cukup mudah untuk dimengerti.
2. Logika Fuzzy sangat fleksibel, artinya mampu beradaptasi dengan perubahan-
perubahan, dan ketidakpastian yang menyertai permasalahan.
3. Logika fuzzy memiliki toleransi terhadap data yang tidak tepat. Jika diberikan
sekelompok data yang cukup homogen, dan kemudian ada beberapa data yang
“eksklusif”, maka logika fuzzy memiliki kemampuan untuk menangani data
eksklusif tersebut.
4. Logika fuzzy mampu memodelkan fungsi-fungsi nonlinear yang sangat kompleks.
Secara umum, struktur dasar logika fuzzy terdiri dari Pengetahuan dasar
(Knowledge Base), Proses Fuzzifikasi, Mesin Inferensi, dan proses Defuzzifikasi.
Penjelasan mengenai diagram struktur dasar logika fuzzy adalah sebagai berikut:
2.2.2. Fuzzifikasi
Fuzzifikasi adalah bagian dari sistem Fuzzy yang berfungsi untuk merubah nilai yang
bersifat pasti (Crispt) kedalam variabel linguistik. Proses ini terdiri dari pembentukan
membership function yang sesuai dengan basis pengetahuan fuzzy.
2.2.4. Defuzzifikasi
Proses terakhir dalam sistem fuzzy adalah defuzzifikasi, dimana proses ini bertujuan
untuk merubah kembali nilai linguistik output dari proses inferensi menjadi nilai pasti
(crispt) yang akan digunakan pada proses sistem kontrol selanjutnya.
1.0 1.0
0 a b 0 a b
Domain Domain
Kurva linier naik merupakan himpunan yang dimulai pada nilai domain yang
memiliki derajat keanggotaan nol (0) bergerak ke arah kanan menuju nilai domain
yang memiliki derajat keanggotaan lebih tinggi.
Fungsi Keanggotaan:
0; 𝑥≤𝑎
𝑥−𝑎 (2.1)
𝜇 𝑥, 𝑎, 𝑏 = ; 𝑎 ≤𝑥 ≤𝑏
𝑏−𝑎
1; 𝑥≥𝑏
Keterangan:
µ = fungsi keanggotaan himpunan
a = nilai domain yang mempunyai derajat keanggotaan nol
b = nilai domain yang mempunyai derajat keanggotaan satu
x = nilai input yang akan di ubah ke dalam bilangan fuzzy
1.0 1.0
0 a b 0 a b
Domain Domain
Kurva linier turun seperti yang ditunjukkan pada gambar 2.3 merupakan
himpunan dimana dimulai dari nilai domain dengan derajat keanggotaan tertinggi
pada sisi kiri, kemudian bergerak menurun ke nilai domain yang memiliki derajat
keanggotaan lebih rendah.
Fungsi Keanggotaan:
1; 𝑥≤𝑎
𝑏−𝑥
𝜇 𝑥, 𝑎, 𝑏 = ; 𝑎 ≤𝑥 ≤𝑏
𝑏−𝑎 (2.2)
0; 𝑥≥𝑏
Keterangan:
µ = fungsi keanggotaan himpunan
a = nilai domain yang mempunyai derajat keanggotaan satu
b = nilai domain yang mempunyai derajat keanggotaan nol
x = nilai input yang akan di ubah ke dalam bilangan fuzzy
1.0
0 a b c
Segitiga
Kurva segitiga yang ditunjukkan pada gambar 2.4 pada dasarnya terbentuk dari
gabungan antara 2 garis (linear).
Fungsi Keanggotaan:
0; 𝑥 ≤ 𝑎 𝑎𝑡𝑎𝑢 𝑥 ≥ 𝑐
𝑥−𝑎
; 𝑎<𝑥≤𝑏
μ [x] = 𝑏 − 𝑎 (2.3)
𝑐−𝑥
; 𝑏<𝑥 <𝑐
𝑐−𝑏
Keterangan:
µ = fungsi keanggotaan himpunan
a = nilai domain terkecil yang mempunyai derajat keanggotaan nol
b = nilai domain yang mempunyai derajat keanggotaan satu
c = nilai domain terbesar yang mempunyai derajat keanggotaan nol
x = Nilai input yang akan di ubah ke dalam bilangan fuzzy
Dimana parameter {a,b,c} (dengan a<b<c) yang menentukan koordinat x dari ketiga
sudut segitiga tersebut.
1.0
0 a b c d
Trapesium
Kurva trapesium seperti yang ditunjukkan pada gambar 2.5 pada dasarnya kurva
trapesium adalah kurva segitiga, namun ada beberapa titik ditengah yang mempunyai
nilai keanggotaan 1.
Fungsi Keanggotaan:
0; 𝑥 ≤ 𝑎 𝑎𝑡𝑎𝑢 𝑥 ≥ 𝑑
𝑥−𝑎
; 𝑎≤𝑥≤𝑏
𝑏−𝑎
μ [x] = 1; 𝑏 ≤ 𝑥 ≤ 𝑐 (2.4)
𝑑−𝑥
; 𝑐≤𝑥 ≤𝑑
𝑑−𝑐
Keterangan :
µ = fungsi keanggotaan himpunan
a = Nilai domain terkecil yang mempunyai derajat keanggotaan nol
b = Nilai domain terkecil yang mempunyai derajat keanggotaan satu
c = Nilai domain terbesar yang mempunyai derajat keanggotaan satu
d = Nilai domain terbesar yang mempunyai derajat keanggotaan nol
x = Nilai input yang akan di ubah ke dalam bilangan fuzzy
Contoh : Terdapat suatu himpunan data yang berisikan variabel usia dengan klasifikasi
sebagai berikut :
[32]=0).
Jika pada himpunan crisp, nilai keanggotaan hanya ada 2 (dua) kemungkinan, yaitu : 0
(nol) dan 1 (satu), maka pada 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 hendak dibahas dalam suatu sistem
fuzzy.
Contoh : usia, temperatur, dan lain-lain.
2. Himpunan Fuzzy (Fuzzy set), merupakan suatu grup yang memiliki suatu
kondisi atau keadaan tertentu dalam suatu variabel fuzzy.
Contoh: Variabel usia memiliki himpunan MUDA, PAROBAYA, dan TUA.
3. Semesta pembicaraan adalah keseluruhan nilai yang diperbolehkan untuk
dioperasikan dalam suatu variabel fuzzy. Semesta pembicaraan merupakan
himpunan bilangan real yang senantiasa naik (bertambah) secara monoton dari
kiri ke kanan atau sebaliknya. Nilai semesta pembicaraan dapat berupa
bilangan positif maupun negatif.
Contoh semesta pembicaraan untuk variabel usia : [0 +∞]
4. Domain fuzzy set adalah keseluruhan nilai yang diizinkan dan boleh
dioperasikan dalam suatu fuzzy set. Seperti halnya semesta pembicaraan,
domain 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 usia :
a. Muda = [0, 30]
b. Parobaya = [30, 50]
c. Tua = [50, ∞].
1. User interface
Digunakan sebagai media oleh user untuk melihat dan berinteraksi dengan sistem.
2. Developer interface
Media yang digunakan untuk mengembangkan sistem oleh engineer.
3. Fasilitas penjelasan
Sub sistem yang berfungsi untuk menyediakan penjelesan dalam sistem
reasoning.
4. Program eksternal
Program seperti database, spreadsheet, yang bekerja dalam mendukung
keseluruhan sistem.
α1 ∗ z1 + α2 ∗ z2 + … … + αn ∗ zn
𝑍= (2.5)
α1 + α2 + ⋯ + αn
Dimana:
αn = Derajat Keanggotaan dari Aturan ke- n
2.7 Accelerometer
2.8 Gyroscope
(IMU) . Modul tersebut merupakan suatu unit dalam modul elektronik yang bertugas
mengumpulkan data kecepatan angular dan akselerasi linear (Latif, et al., 2014).
2.9 Mikrokontroller
Pada saat ini penggunaan mikrokontroler dapat kita temui pada bebabagai
peralatan, misalnya Peralatan yang terdapat di rumah, seperti telepon digital,
microwave oven, telivisi, mesin cuci, sistem keamanan rumah, PDA, dll.
Mikrokontroler dapat kita gunakan untuk berbagai aplikasi misalnya untuk
penegndalian, otomatisasi industri, akuisi data, telekomunikasi dan lain-lain.
Keuntungan menggunakan mikrokontroler yaitu harganya murah, dapat diprogram
berulang kali, dan dapat kita program sesuai dengan keinginan kita.
BLDC motor atau dapat disebut juga dengan BLAC motor merupakan motor listrik
synchronous AC 3 fasa. Perbedaan pemberian nama ini terjadi karena BLDCM
Secara umum BLDCM terdiri dari dua bagian, yakni rotor, bagian yang
bergerak, yang terbuat dari permanen magnet dan stator, bagian yang tidak bergerak,
yang terbuat dari kumparan 3 fasa. Walaupun merupakan motor listrik synchronous
AC 3 fasa, motor ini tetap disebut dengan BLDCM karena pada implementasinya
BLDCM mengguna kan sumber DC sebagai sumber energi utama yang kemudian
diubah menjadi tegangan AC dengan menggunakan inverter 3 fasa. Tujuan dari
pemberian tegangan AC 3 fasa pada stator BLDCM adalah menciptakan medan
magnet putar stator untuk menarik magnet rotor.
Adapaun penelitian yang terkait dalam pembahasan penelitian ini dapat dilihat pada
Tabel 2.1
BAB III
METODOLOGI PENELITIAN
3.1 Pendahuluan
Pembahasan dalam tesis ini bertujuan untuk mendapatkan kontrol kestabilan yang
optimal pada quadcopter melalui pendekatan metode fuzzy logic. Proses pengolahan
setiap variabel dilakukan dengan fuzzy inference sistem model Tsukamoto. untuk
mengendalikan kecepatan keempat motor penggerak dari quadcopter. Data masukan
tentang orientasi quadcopter didapat nilai sumbu x, dan sumbu y yang berisi informasi
tentang kemiringan relatif dari quadcopter. Data ini akan mewakili nilai dari posisi
kemiringan relatif quadcopter.
Pengumpulan Data
Analisa Kebutuhan
Implementasi
Fuzzy Tsukamoto
Fuzzyfikasi
Proses Infrensi
Defuzzyfikasi
Pada gambar 3.1 diatas tahap awal dari penelitian ini adalah menentukan latar
belakang serta tujuan dari penelitian. Studi literatur dilakukan untuk memperdalam
pemahaman tentang cara kerja metode Tsukamoto serta tahapan-tahapan apa saja yang
harus dilakukan dalam menganalisis kestabilan quadcopter sehingga metode
Tsukamoto dapat diterapkan dalam penelitian ini. Studi literatur dikumpulkan melalui
berbagai sumber kepustakaan, baik berupa buku, jurnal, prosiding, tesis dan lain-lain
sebagai bahan pendukung. Selain itu penulis juga berkonsultasi dengan dosen
pembimbing agar penulisan tesis lebih terarah.
Tahap kedua adalah analisa kebutuhan, pada tahap ini, akan ditentukan
kebutuhan apa saja yang diperlukan dalam menyusun perhitungan sistematis pada
metode fuzzy inferensi Tsukamoto, terutama menyusun himpunan fuzzy dan
membership function menggunakan piecewise linear function triangular dalam
fuzzyfikasi, mengetahui atribut linguistik dan numeris yang digunakan dalam fungsi
keanggotaan fuzzy , serta aturan- aturan yang digunakan untuk mesin inferensi.
Himpunan fuzzy dan fungsi keanggotaan untuk fuzzyfikasi dalam kontrol kestabilan
quadcopter.
Pada tahap ketiga adalah pengumpulan data Tahap ini berupa observasi untuk
mengumpulkan data yang dibutuhkan untuk kepentingan penelitian. Data yang
diperoleh adalah data inputan dari beban quadcopter dan data dari sensor
accelerometer dan gyroscope yang berisis tentang kemiringan-kemiringan pada sumbu
x dan y. Tahap keempat adalah implementasi metode Tsukamoto melalui tahap
fuzzyfikasi, proses inferensi dan defuzzifikasi. Tahap kelima adalah analisa hasil
penilaian kestabilan quadcopter dengan menggunkan metode Tsukamoto. Selanjutnya
pada tahapa terakhir adalah memberikan kesimpulan dan saran.
Mulai
Input Nilai
Himpunan Fuzzy
Fuzzyfikasi
Proses Inferensi
Defuzzyfikasi
Persentasi
Kenaikan
Kecepatan Motor
Selesai
Pada gambar 3.2 diatas aliran data penentuan persentasi kenaikan kecepatan empat
buah motor penggerak menggunakan metode fuzzy Tsukamoto dapat dimulai dari
input himpunan fuzzy yang mencakup beban, kemiringan sumbu x dan kemiringan
sumbu y, Lakukan proses fuzzifikasi untuk menentukan derajat keanggotaan setiap
nilai fuzzy. Setelah itu lakukan proses inferensi sesuai dengan aturan fuzzy yang
digunakan sehingga dapat diperoleh nilai sesuai aturan fuzzy,. selanjutnya lakukan
proses defuzzifikasi sehingga dapat diperoleh nilai kecepatan tiap-tiap motor.
Terakhir dilakukan diagnosa untuk menentukan persentasi kenaikan kecepatan motor.
Motor Motor
2 1
Motor Motor
3 4
Pada gambar 3.3 diatas dapat dilihat skema letak motor pada quadcopter dimana
setiap lengan quadcopter terdiri atas empat buah motor penggerak dan pada keempat
buah motornya terpasang baling-baling (propeller). Dibagian tengah (pusat) dari
desain quadcopter terletak mikrokontroller yang fungsinya sebagai sistem kontrol
pada quadcopter tersebut
CW
M2
X
CCW M3 M1 CW
M4
CCW
1. Variabel Beban
2. Variabel Kemiringan Sumbu X
Pada variabel beban data tersebut akan digunakan sebagai parameter fungsi
keanggotaan fuzzy yang terdiri dari 3 daerah liguistik yaitu Ringan (R), Sedang (S)
dan Berat (B). Sedangkan pada variabel kemiringan sumbu x dan sumbu y, data yang
digunakan sebagai parameter keanggotaan fuzzy tediri dari 3 daerah linguistik yaitu
Clock Wise (CW), Normal (N) dan Counter Clock Wise (CCW).
Variabel output terdiri dari persentasi kenaikan kecepatan empat buah motor
penggerak dimana data tersebut digunakan sebagai fungsi keanggotaan fuzzy yang
terdiri dari 4 daerah linguistik yaitu Tetap (T), Lambat (L), Sedang (S) dan Cepat (C).
Desain fungsi keanggotaan fuzzy Segitiga untuk variabel Beban terdiri dari 3 daerah
linguistik yaitu R (0, 100, 200 ), S (100, 200, 300) dan B (200, 300, 400).
Dari gambar 3.5 maka derajat keanggotaan variabel beban dapat dihitung dengan
1, 𝑥 ≤ 100
200−𝑥
µBebanringan [𝑥] = 200−100
, 100 ≤ 𝑥 ≤ 200
0, 𝑥 ≥ 200
1, 𝑥 = 200
𝑥−100
, 100 ≤ 𝑥 ≤ 200
200−100
µBebanSedang [𝑥] = 300−𝑥
, 100 ≤ 𝑥 ≤ 300
300−200
0, 𝑥 ≤ 100 , 𝑥 ≥ 300
1, 𝑥 ≥ 300
𝑥−200
µBebanBerat[x] = 300−200
, 200 ≤ 𝑥 ≤ 300
0, 𝑥 ≤ 200
Desain fungsi keanggotaan fuzzy Segitiga untuk variabel kemiringan sumbu x terdiri
dari 3 daerah linguistik yaitu CW (-20, -10, 0 ), Normal (-10, 0, 10 ) dan CCW (0, 10,
20 ).
CW NORMAL CCW
1
Derajat Keanggotaan
0 -20 -10 0 10 20
NILAI KEMIRINGAN SUMBU X
Dari gambar 3.6 diatas maka derajat keanggotaan variabel kemiringann sumbu x dapat
1, 𝑥 ≤ −10
0−𝑥
µSumbu XCW [𝑥] = 0+10 , −10 ≤ 𝑥 ≤ 0
0, 𝑥 ≥ 0
1, 𝑥 = 0
𝑥+10
, −10 ≤ 𝑥 ≤ 0
0+10
µSumbu XNormal [𝑥] = 10−𝑥
, 0 ≤ 𝑥 ≤ 10
10−0
0, 𝑥 ≤ −10 , 𝑥 ≥ 10
1, 𝑥 ≥ 10
𝑥−0
µSumbu XCCW [𝑥] = 10−0 , 0 ≤ 𝑥 ≤ 10
0, 𝑥 ≤ 0
Desain fungsi keanggotaan fuzzy Segitiga untuk variabel kemiringan sumbu y terdiri
dari 3 daerah linguistik yaitu CW (-20, -10, 0 ), Normal (-10, 0, 10 ) dan CCW (0, 10,
20 ).
CW NORMAL CCW
1
Derajat Keanggotaan
0 -20 -10 0 10 20
NILAI KEMIRINGAN SUMBU Y
Dari gambar 3.7 diatas maka derajat keanggotaan variabel kemiringann sumbu y dapat
1, 𝑥 ≤ −10
0−𝑥
µSumbu YCW [𝑥] = 0+10
, −10 ≤ 𝑥 ≤ 0
0, 𝑥 ≥ 0
1, 𝑥 = 0
𝑥+10
, −10 ≤ 𝑥 ≤ 0
0+10
µSumbu YNormal [𝑥] = 10−𝑥
, 0 ≤ 𝑥 ≤ 10
10−0
0, 𝑥 ≤ −10 , 𝑥 ≥ 10
1, 𝑥 ≥ 10
𝑥−0
µSumbu YCCW [𝑥] = 10−0 , 0 ≤ 𝑥 ≤ 10
0, 𝑥 ≤ 0
Atururan fuzzy yang didefenisikan untuk fuzzy inferensi sistem Tsukamoto ada
sebanyak 27 aturan sebagaimana ditampilkan pada Tabel 3.1, 3.2, 3.3 dan 3.4.
MOTOR
RULE BEBAN SUMBU Y SUMBU X
1
MOTOR
RULE BEBAN SUMBU Y SUMBU X
1
MOTOR
RULE BEBAN SUMBU Y SUMBU X
1
MOTOR
RULE BEBAN SUMBU Y SUMBU X
2
MOTOR
RULE BEBAN SUMBU Y SUMBU X
2
MOTOR
RULE BEBAN SUMBU Y SUMBU X
2
MOTOR
RULE BEBAN SUMBU Y SUMBU X
3
MOTOR
RULE BEBAN SUMBU Y SUMBU X
3
MOTOR
RULE BEBAN SUMBU Y SUMBU X
4
MOTOR
RULE BEBAN SUMBU Y SUMBU X
4
Keterangan:
Sumbu X:
Sumbu Y:
1. Tetap : 0%
2. Lambat : 20%
3. Sedang : 30%
4. Cepat : 40%
BAB IV
4.1 Pendahuluan
Pada penelitian ini akan ditampilkan hasil penelitian kontrol kestabilan quadcopter
untuk menentukan kecepatan motor penggerak quadcopter yang meggunakan metode
fuzzy logic model Tsukamoto. Pada pengujian kontrol kestabilan dengan logika fuzzy
ini digunakan variabel masukan dan variabel keluaran yang digunakan untuk
membangun logika fuzzy. Dimana variabel masukan terdiri atas, beban, kemiringan
sumbu x, dan kemiringan sumbu y. Data kemiringan sumbu x dan y diperoleh dari
data sensor accelerometer dan gyroscope. Berikut adalah sebagian data Beban, sensor
accelerometer dan gyroscope yang digunakan dapat dilihat pada Tabel 4.1 dan Tabel
4.2.
0 7 14 21 28 35 42
1 8 15 22 29 36 43
2 9 16 23 30 37 44
3 10 17 24 31 38 45
4 11 18 25 32 39 46
5 12 19 26 33 40 47
6 13 20 27 34 41 48
-17 -9 -3 5 13 -17 -9 -3 5 13
-16 -9 -2 6 14 -16 -9 -2 6 14
-15 -8 -1 7 15 -15 -8 -1 7 15
-14 -7 0 8 16 -14 -7 0 8 16
-13 -6 1 9 17 -13 -6 1 9 17
Pada pengujian pertama nilai-nilai beban diambil dalam range 0 – 400, nilai pada
kemiringan sumbu x diambil dalam range -180 – 180 dan nilai kemiringan sumbu y
diambil dalam range -90 – 90. Untuk data yang lebih lengkap dapat dilihat pada
lampiran 1,2 dan 3. Contoh pengujian dapat dilihat sebagai berikut:
Beban : 30
X : -2
Y : 12
Sebelum dilakukan inferensi perlu dicari dahulu derajat keanggotaan nilai tiap
variabel dalam setiap himpunan fuzzy pada pengujian pertama sebagai berikut:
Variabel Beban
µRINGAN(30) = 1
µSEDANG(30) = 0
µBERAT(30) = 0
Variabel Sumbu X
Variabel Sumbu Y
µCW(12) = 0
µNORMAL(12) = 0
µCCW(12) = 1
Setelah mendapatkan nilai keanggotaan pada pengujian pertama yang dilakukan pada
proses fuzzyfikasi maka langkah selanjutnya adalah proses perhitungan yang
dilakukan dengan menggunakan rule yang telah ditentukan. Prosesnya adalah sebagai
berikut.
Setelah proses perhitungan deangan menggunakan rule yang ada maka tahap
selanjutnya adalah proses defuzzyfikasi. Adapun proses defuzzyfikasi dengan
inferensi model Tsukamoto pada pengujian pertama terhadap motor 1 adalah sebagai
berikut:
Dari perhitungan pengujian pertama proses defuzzyfikasi pada motor 1 diatas dapat
dilihat bahwa kenaikan kecepatan motor 1 quadcopter yang memiliki beban 30 gram
dengan kemiringan sumbu x = -2 derajat dan kemiringan sumbu y = 12 derajat adalah
13,6 % dari kecepatan sebelumnya.
Setelah proses perhitungan deangan menggunakan rule yang ada maka tahap
selanjutnya adalah proses defuzzyfikasi. Adapun proses defuzzyfikasi dengan
inferensi model Tsukamoto pada pengujian pertama terhadap motor 2 adalah sebagai
berikut:
Z Total = (α-predikat1 * Z1) + (α-predikat1* Z2)
(α-predikat1 + α-predikat2)
= (0,2 * 32) + (0,8 * 8)
(0,2 + 0, 8)
= 12,8
1
= 12,8
Dari perhitungan pengujian pertama proses defuzzyfikasi pada motor 2 diatas dapat
dilihat bahwa kenaikan kecepatan motor 2 quadcopter yang memiliki beban 30 gram
dengan kemiringan sumbu x = -2 derajat dan kemiringan sumbu y = 12 derajat adalah
12,8 % dari kecepatan sebelumnya.
Setelah proses perhitungan deangan menggunakan rule yang ada maka tahap
selanjutnya adalah proses defuzzyfikasi. Adapun proses defuzzyfikasi dengan
inferensi model Tsukamoto pada pengujian pertama terhadap motor 3 adalah sebagai
berikut:
Dari perhitungan pengujian pertama proses defuzzyfikasi pada motor 3 diatas dapat
dilihat bahwa kenaikan kecepatan motor 3 quadcopter yang memiliki beban 30 gram
dengan kemiringan sumbu x = -2 derajat dan kemiringan sumbu y = 12 derajat adalah
12,8 % dari kecepatan sebelumnya.
Setelah proses perhitungan deangan menggunakan rule yang ada maka tahap
selanjutnya adalah proses defuzzyfikasi. Adapun proses defuzzyfikasi dengan
inferensi model Tsukamoto pada pengujian pertama terhadap motor 4 adalah sebagai
berikut:
= 26,4
1
= 26,4
Dari perhitungan pengujian pertama proses defuzzyfikasi pada motor 4 diatas dapat
dilihat bahwa kenaikan kecepatan motor 4 quadcopter yang memiliki beban 30 gram
dengan kemiringan sumbu x = -2 derajat dan kemiringan sumbu y = 12 derajat adalah
26,4 % dari kecepatan sebelumnya.
Pada pengujian kedua nilai-nilai beban diambil dalam range 0 – 400, nilai pada
kemiringan sumbu x diambil dalam range -180 – 180 dan nilai kemiringan sumbu y
diambil dalam range -90 – 90. Contoh pengujian dapat dilihat sebagai berikut:
Beban : 50
X : 5
Y : -7
Sebelum dilakukan inferensi perlu dicari dahulu derajat keanggotaan nilai tiap
variabel dalam setiap himpunan fuzzy pada pengujian kedua sebagai berikut:
Variabel Beban
µRINGAN(50) = 1
µSEDANG(50) = 0
µBERAT(50) = 0
Variabel Sumbu X
µCW(5) = 0
10−5
µNORMAL(5) =
10−0
5
= 10
= 0,5
10−5
µCCW(5) =
10−0
5
= 10
= 0,5
Variabel Sumbu Y
−7 −(−10)
µNORMAL(-7) =
0−(−10)
3
= 10
= 0,3
0−(−7)
µCW(-7) =
0−(−10)
7
= 10
= 0,7
µCCW(-7) = 0
Setelah mendapatkan nilai keanggotaan pada pengujian kedua yang dilakukan pada
proses fuzzyfikasi maka langkah selanjutnya adalah proses perhitungan yang
dilakukan dengan menggunakan rule yang telah ditentukan. Prosesnya adalah sebagai
berikut.
Setelah proses perhitungan deangan menggunakan rule yang ada maka tahap
selanjutnya adalah proses defuzzyfikasi. Adapun proses defuzzyfikasi dengan
inferensi model Tsukamoto pada pengujian kedua terhadap motor 1 adalah sebagai
berikut:
= 36,8
1,6
= 23
Dari perhitungan pengujian kedua proses defuzzyfikasi pada motor 1 diatas dapat
dilihat bahwa kenaikan kecepatan motor 1 quadcopter yang memiliki beban 50 gram
dengan kemiringan sumbu x = 5 derajat dan kemiringan sumbu y = -7 derajat adalah
23 % dari kecepatan sebelumnya.
Setelah proses perhitungan deangan menggunakan rule yang ada maka tahap
selanjutnya adalah proses defuzzyfikasi. Adapun proses defuzzyfikasi dengan
inferensi model Tsukamoto pada pengujian kedua terhadap motor 2 adalah sebagai
berikut:
= 29,25
Dari perhitungan pengujian kedua proses defuzzyfikasi pada motor 2 diatas dapat
dilihat bahwa kenaikan kecepatan motor 1 quadcopter yang memiliki beban 50 gram
dengan kemiringan sumbu x = 5 derajat dan kemiringan sumbu y = -7 derajat adalah
29,25 % dari kecepatan sebelumnya.
Setelah proses perhitungan deangan menggunakan rule yang ada maka tahap
selanjutnya adalah proses defuzzyfikasi. Adapun proses defuzzyfikasi dengan
inferensi model Tsukamoto pada pengujian kedua terhadap motor 3 adalah sebagai
berikut:
= 27,25
Dari perhitungan pengujian kedua proses defuzzyfikasi pada motor 3 diatas dapat
dilihat bahwa kenaikan kecepatan motor 1 quadcopter yang memiliki beban 50 gram
dengan kemiringan sumbu x = 5 derajat dan kemiringan sumbu y = -7 derajat adalah
27,25 % dari kecepatan sebelumnya.
Setelah proses perhitungan deangan menggunakan rule yang ada maka tahap
selanjutnya adalah proses defuzzyfikasi. Adapun proses defuzzyfikasi dengan
inferensi model Tsukamoto pada pengujian kedua terhadap motor 4 adalah sebagai
berikut:
= 36,8
1,6
= 23
Dari perhitungan pengujian kedua proses defuzzyfikasi pada motor 4 diatas dapat
dilihat bahwa kenaikan kecepatan motor 1 quadcopter yang memiliki beban 50 gram
dengan kemiringan sumbu x = 5 derajat dan kemiringan sumbu y = -7 derajat adalah
23 % dari kecepatan sebelumnya.
Dari hasil pengujian pada penelitian kontrol kestabilan quadcopter ini maka hasil yang
dilakukan dengan dua kali pengujian adalah sebagai berikut.
Pada pengujian pertama hasil yang didapat dengan metode fuzzy Tsukamoto
kecepatan motor pada keempat motor penggerak adalah untuk beban quadcopter 30
gram, sumbu kemiringan pada x = -2 dan sumbu kemiringan y = 12 maka hasil
pertambahan kecepatan motor 1 = 13,6 % dari kecepatan sebelumnya, motor 2 =
12,8 % dari kecepatan sebelumnya, motor 3 = 12,8 % dari kecepatan sebelumnya dan
motor 4 = 26,4 % dari kecepatan sebelumnya. Sedangkan pada pengujian kedua
untuk beban quadcopter 50 gram, sumbu kemiringan pada x = 5 dan sumbu
kemiringan y = -7 maka hasil pertambahan kecepatan motor 1 = 23 % dari kecepatan
sebelumnya , motor 2 = 29,25 % dari kecepatan sebelumnya, motor 3 = 27,25% dari
kecepatan sebelumnya dan motor 4 = 23 % dari kecepatan sebelumnya.
Hasil percobaan yang telah diuiji akan ditampilkan pada tabel 4.3 dimana pada
percobaan yang dilakukan ada sebanyak 20 kali percobaan.
Pada tabel 4.3 hasil dari setiap percobaan menunjukkan hasil pertambahan kecepatan
yang diperoleh oleh tiap motor penggerak dari quadcopter dimana setiap variabel
input pada masing-masing percobaan berbeda nilai inputnya. Adapun Keterangan dari
setiap percobaan pada tabel 4.3 adalah sebagai berikut:
1. Pada percobaan pertama hasil yang didapat adalah untuk beban quadcopter 25
gram, sumbu kemiringan pada x = 8 derajat dan sumbu kemiringan y = 8 derajat
maka hasil pertambahan kecepatan motor 1 = 18,29 % dari kecepatan
sebelumnya, motor 2 = 18,29 % dari kecepatan sebelumnya, motor 3 = 28,00 %
dari kecepatan sebelumnya dan motor 4 = 28,00 % dari kecepatan sebelumnya.
2. Pada percobaan kedua hasil yang didapat adalah untuk beban quadcopter 30
gram, sumbu kemiringan pada x = 10 derajat dan sumbu kemiringan y = -5
derajat maka hasil pertambahan kecepatan motor 1 = 13,6 % dari kecepatan
sebelumnya, motor 2 = 12,8 % dari kecepatan sebelumnya, motor 3 = 12,8 % dari
kecepatan sebelumnya dan motor 4 = 26,4 % dari kecepatan sebelumnya.
3. Pada percobaan ketiga hasil yang didapat adalah untuk beban quadcopter 40
gram, sumbu kemiringan pada x = -9 derajat dan sumbu kemiringan y = 5 derajat
maka hasil pertambahan kecepatan motor 1 = 31,00 % dari kecepatan
sebelumnya, motor 2 = 26,83 % dari kecepatan sebelumnya, motor 3 = 22,66 %
dari kecepatan sebelumnya dan motor 4 = 27,00 % dari kecepatan sebelumnya.
4. Pada percobaan keempat hasil yang didapat adalah untuk beban quadcopter 60
gram, sumbu kemiringan pada x = 3 derajat dan sumbu kemiringan y = -7 derajat
maka hasil pertambahan kecepatan motor 1 = 21,00 % dari kecepatan
sebelumnya, motor 2 = 28,25 % dari kecepatan sebelumnya, motor 3 = 23,25 %
dari kecepatan sebelumnya dan motor 4 = 21,00 % dari kecepatan sebelumnya.
5. Pada percobaan kelima hasil yang didapat adalah untuk beban quadcopter 75
gram, sumbu kemiringan pada x = 7 derajat dan sumbu kemiringan y = 5 derajat
maka hasil pertambahan kecepatan motor 1 = 23,00 % dari kecepatan
sebelumnya, motor 2 = 23,00 % dari kecepatan sebelumnya, motor 3 = 29,25 %
dari kecepatan sebelumnya dan motor 4 = 27,25 % dari kecepatan sebelumnya.
6. Pada percobaan keenam hasil yang didapat adalah untuk beban quadcopter 80
gram, sumbu kemiringan pada x = 11 derajat dan sumbu kemiringan y = 5 derajat
maka hasil pertambahan kecepatan motor 1 = 20,00 % dari kecepatan
sebelumnya, motor 2 = 20,00 % dari kecepatan sebelumnya, motor 3 = 30,00 %
dari kecepatan sebelumnya dan motor 4 = 25,00 % dari kecepatan sebelumnya.
7. Pada percobaan ketujuh hasil yang didapat adalah untuk beban quadcopter 87
gram, sumbu kemiringan pada x = -6 derajat dan sumbu kemiringan y = 8 derajat
maka hasil pertambahan kecepatan motor 1 = 28,57 % dari kecepatan
sebelumnya, motor 2 = 23,42 % dari kecepatan sebelumnya, motor 3 = 22,85 %
dari kecepatan sebelumnya dan motor 4 = 30,28 % dari kecepatan sebelumnya.
8. Pada percobaan kedelapan hasil yang didapat adalah untuk beban quadcopter 100
gram, sumbu kemiringan pada x = -4 derajat dan sumbu kemiringan y = 2 derajat
maka hasil pertambahan kecepatan motor 1 = 25,71 % dari kecepatan
sebelumnya, motor 2 = 25,14 % dari kecepatan sebelumnya, motor 3 = 22,85 %
dari kecepatan sebelumnya dan motor 4 = 24,00 % dari kecepatan sebelumnya.
9. Pada percobaan kesembilan hasil yang didapat adalah untuk beban quadcopter 27
gram, sumbu kemiringan pada x = 4 derajat dan sumbu kemiringan y = -10
derajat maka hasil pertambahan kecepatan motor 1 = 19,20 % dari kecepatan
sebelumnya, motor 2 = 29,60 % dari kecepatan sebelumnya, motor 3 = 22,40 %
dari kecepatan sebelumnya dan motor 4 = 19,20 % dari kecepatan sebelumnya.
10. Pada percobaan kesepuluh hasil yang didapat adalah untuk beban quadcopter 250
gram, sumbu kemiringan pada x = 2 derajat dan sumbu kemiringan y = 6 derajat
maka hasil pertambahan kecepatan motor 1 = 34,34 % dari kecepatan
sebelumnya, motor 2 = 34,34 % dari kecepatan sebelumnya, motor 3 = 34,96 %
dari kecepatan sebelumnya dan motor 4 = 36,57 % dari kecepatan sebelumnya.
11. Pada percobaan kesebelas hasil yang didapat adalah untuk beban quadcopter 258
gram, sumbu kemiringan pada x = 4 derajat dan sumbu kemiringan y = 2 derajat
maka hasil pertambahan kecepatan motor 1 = 34,58 % dari kecepatan
sebelumnya, motor 2 = 34,58 % dari kecepatan sebelumnya, motor 3 = 36,11 %
dari kecepatan sebelumnya dan motor 4 = 35,19 % dari kecepatan sebelumnya.
12. Pada percobaan keduabelas hasil yang didapat adalah untuk beban quadcopter 25
gram, sumbu kemiringan pada x = 4 derajat dan sumbu kemiringan y = -5 derajat
maka hasil pertambahan kecepatan motor 1 = 21,77 % dari kecepatan
sebelumnya, motor 2 = 26,33 % dari kecepatan sebelumnya, motor 3 = 25,33 %
dari kecepatan sebelumnya dan motor 4 = 21,77 % dari kecepatan sebelumnya.
13. Pada percobaan ketigabelas hasil yang didapat adalah untuk beban quadcopter 43
gram, sumbu kemiringan pada x = 12 derajat dan sumbu kemiringan y = -4
derajat maka hasil pertambahan kecepatan motor 1 = 19,20 % dari kecepatan
sebelumnya, motor 2 = 22,40 % dari kecepatan sebelumnya, motor 3 = 29,60 %
dari kecepatan sebelumnya dan motor 4 = 19,20 % dari kecepatan sebelumnya.
14. Pada percobaan keempatbelas hasil yang didapat adalah untuk beban quadcopter
35 gram, sumbu kemiringan pada x = -5 derajat dan sumbu kemiringan y = 10
derajat maka hasil pertambahan kecepatan motor 1 = 25,00 % dari kecepatan
sebelumnya, motor 2 = 20,00 % dari kecepatan sebelumnya, motor 3 = 20,00 %
dari kecepatan sebelumnya dan motor 4 = 30,00 % dari kecepatan sebelumnya.
15. Pada percobaan kelimabelas hasil yang didapat adalah untuk beban quadcopter
220 gram, sumbu kemiringan pada x = 2 derajat dan sumbu kemiringan y = 6
derajat maka hasil pertambahan kecepatan motor 1 = 33,81 % dari kecepatan
sebelumnya, motor 2 = 33,81 % dari kecepatan sebelumnya, motor 3 = 34,54 %
dari kecepatan sebelumnya dan motor 4 = 36,00 % dari kecepatan sebelumnya.
16. Pada percobaan keenambelas hasil yang didapat adalah untuk beban quadcopter
300 gram, sumbu kemiringan pada x = 3 derajat dan sumbu kemiringan y = -9
derajat maka hasil pertambahan kecepatan motor 1 = 35,00 % dari kecepatan
sebelumnya, motor 2 = 39,83 % dari kecepatan sebelumnya, motor 3 = 35,83 %
dari kecepatan sebelumnya dan motor 4 = 35,00 % dari kecepatan sebelumnya.
17. Pada percobaan ketujuhbelas hasil yang didapat adalah untuk beban quadcopter
330 gram, sumbu kemiringan pada x = 2 dan sumbu kemiringan y = -15 maka
hasil pertambahan kecepatan motor 1 = 33,20 % dari kecepatan sebelumnya,
motor 2 = 40,00 % dari kecepatan sebelumnya, motor 3 = 33,60 % dari kecepatan
sebelumnya dan motor 4 = 33,20 % dari kecepatan sebelumnya.
18. Pada percobaan kedelapanbelas hasil yang didapat adalah untuk beban quadcopter
200 gram, sumbu kemiringan pada x = -13 derajat dan sumbu kemiringan y = 4
derajat maka hasil pertambahan kecepatan motor 1 = 34,80 % dari kecepatan
sebelumnya, motor 2 =29,60 % dari kecepatan sebelumnya, motor 3 = 29,60 %
kecepatan dari sebelumnya dan motor 4 = 31,20 % dari kecepatan sebelumnya.
19. Pada percobaan kesembilanbelas hasil yang didapat adalah untuk beban
quadcopter 95 gram, sumbu kemiringan pada x = 10 derajat dan sumbu
kemiringan y = 3 derajat maka hasil pertambahan kecepatan motor 1 = 16,80 %
dari kecepatan sebelumnya, motor 2 = 16,80 % dari kecepatan sebelumnya, motor
3 = 28,40 % dari kecepatan sebelumnya dan motor 4 = 18,60 % dari kecepatan
sebelumnya.
20. Pada percobaan keduapuluh hasil yang didapat adalah untuk beban quadcopter
150 gram, sumbu kemiringan pada x = -2 dan sumbu kemiringan y = 9 maka hasil
pertambahan kecepatan motor 1 = 30,50 % dari kecepatan sebelumnya, motor 2 =
29,77 % dari kecepatan sebelumnya, motor 3 = 29,66 % dari kecepatan
sebelumnya dan motor 4 = 34,50 % dari kecepatan sebelumnya.
BAB V
5.1. Kesimpulan
Kesimpulan yang dapat diambil dari hasil penelitan ini adalah kecepatan motor
penggerak yang didapat dengan fuzzy logic model Tsukamoto adalah memiliki tingkat
akurasi yang baik dalam menentukan kestabilan quadcopter dengan kontrol kecepatan
keempat motor penggerak. Nilai yang dihasilkan oleh fuzzy Tsukamoto tersebut lebih
mendekati hasil lebih yang baik dalam kontrol kestabilan quadcopter. Kestabilan
quadcopter cenderung mempertahankan posisi tertentu dalam suatu penerbangan
dimana quadcopter terbang stabil bila posisi quadcopter pada saat terbang mendapat
gangguan maka quadcopter akan mempertahankan posisi keseimbangannya.
Oleh karena itu, metode fuzzy Tsukamoto dapat menjadi alternatif dalam
menentukan tingkat kestabilan quadcopter. Metode ini dapat digunakan sebagai acuan
untuk kontrol kestabilan quadcopter yang dapat dilihat dari pertambahan kecepatan
keempat motor penggeraknya.
5.2. Saran
Adapun saran yang diberikan pada penelitian ini adalah sebagai berikut:
DAFTAR PUSTAKA
Achtelik, M., Bierling, T., Wang, J., Hocht, L., & Holzapfel, F. (2011). Adaptive
Control of a Quadcopter in the Presence of large/complete Parameter
Uncertainties. American Institute of Aeronautics and Astronautics (AIAA)
(2011-1485).
Achtelik, M., Zhang, T., Kiinhnlenz, K., & Buss, M. (2009). Visual Tracking and
Control of a Quadcopter Using a Stereo Camera System and Inertial Sensors.
(978-1-4244-2693-5).
Benavidez, P. J., Lambert, J., Jaimes, A., & Jamshidi, M. (2014). Landing of a
Quadcopter on a Mobile Base Using Fuzzy Logic.
Desa, H. (2013). Adptive Hybrid Control Algorithm Design for Attitude. Vol 66, No.
2 (ISSN 1661-464X).
Hendriawan, A., Utomo, G. P., & Octavianto, H. (2012). Sistem Kontrol Altitude
Pada UAV Model Quadcopter Dengan Metode PID. (ISBN: 978-602-9494-28-
0).
Jang, J.-S. R., Sun, C. T., & Mizutani, E. (1997). Neuro-Fuzzy And Soft Computing
(Vols. ISBN 0-13-261066-3). Prentice-Hall.
Kardono, AK, R. E., & Fatoni, A. (2012). Perancangan dan Implementasi Sistem
Pengaturan Optimal LQR Untuk Menjaga Kestabilan Hover pada Quadcopter.
Jurnal teknik ITS , Vol. 1, No. 1 (ISSN:2301-9271), ISSN:2301-9271.
Sharma, A., & Barve, A. (2012). Controlling of Quad-rotor UAV Using PID
Controller and Fuzzy Logic Controller. (ISSN No. (Online) : 2277-2626).
Sutojo, T., Mulyanto, E., Su, & Suhartono, V. (2011). Kecerdasan Buatan.
Yogyakarta: ANDI.
Wahyudi, Susanto, A., Hadi, P. S., & Widada, W. (2009). Penentuan Faktor Kalibrasi
Accelerometer MMA7260Q Pada Ketiga Sumbu. Jurnal Teknik Elektro , Jilid
11, Nomor 1 (hlm. 16-22), Jilid 11, Nomor 1, hlm. 16-22.
Lampiran-1
Lampiran-2
Lampiran-3
Tabel 4.2 Data Sensor Accelerometer dan Gyroscope Pada Kemiringan Sumbu Y
(Derajat)
-56 -16 24 64
-55 -15 25 65
-54 -14 26 66
-53 -13 27 67
-52 -12 28 68
-51 -11 29 69
LAMPIRAN-4
LISTING PROGRAM
Motor(0, 9) = "SEDANG"
Motor(0, 10) = "LAMBAT"
Motor(0, 11) = "LAMBAT"
Motor(0, 12) = "SEDANG"
Motor(0, 13) = "LAMBAT"
Motor(0, 14) = "LAMBAT"
Motor(0, 15) = "SEDANG"
Motor(0, 16) = "LAMBAT"
Motor(0, 17) = "LAMBAT"
Motor(1, 9) = "SEDANG"
Motor(1, 10) = "SEDANG"
Motor(1, 11) = "SEDANG"
Motor(1, 12) = "LAMBAT"
Motor(1, 13) = "LAMBAT"
Motor(1, 14) = "LAMBAT"
Motor(1, 15) = "LAMBAT"
Motor(1, 16) = "LAMBAT"
Motor(1, 17) = "LAMBAT"
Motor(2, 5) = "LAMBAT"
Motor(2, 6) = "TETAP"
Motor(2, 7) = "TETAP"
Motor(2, 8) = "LAMBAT"
Motor(2, 9) = "LAMBAT"
Motor(2, 10) = "LAMBAT"
Motor(2, 11) = "SEDANG"
Motor(2, 12) = "LAMBAT"
Motor(2, 13) = "LAMBAT"
Motor(2, 14) = "SEDANG"
Motor(2, 15) = "LAMBAT"
Motor(2, 16) = "LAMBAT"
Motor(2, 17) = "SEDANG"
Motor(3, 9) = "LAMBAT"
Motor(3, 10) = "LAMBAT"
Motor(3, 11) = "LAMBAT"
Motor(3, 12) = "LAMBAT"
Motor(3, 13) = "LAMBAT"
Motor(3, 14) = "LAMBAT"
Motor(3, 15) = "SEDANG"
Motor(3, 16) = "SEDANG"
Motor(3, 17) = "SEDANG"
txtB_S1.Text = "100"
txtB_S2.Text = "200"
txtB_S3.Text = "300"
txtB_B1.Text = "200"
txtB_B2.Text = "300"
txtB_B3.Text = "400"
' Variabel X
txtX_R1.Text = "-20"
txtX_R2.Text = "-10"
txtX_R3.Text = "-0"
txtX_S1.Text = "-10"
txtX_S2.Text = "0"
txtX_S3.Text = "10"
txtX_T1.Text = "0"
txtX_T2.Text = "10"
txtX_T3.Text = "20"
' Variabel Y
txtY_R1.Text = "-20"
txtY_R2.Text = "-10"
txtY_R3.Text = "0"
txtY_S1.Text = "-10"
txtY_S2.Text = "0"
txtY_S3.Text = "10"
txtY_T1.Text = "0"
txtY_T2.Text = "10"
txtY_T3.Text = "20"
End Sub
Fuzzy_Y.Add(txtF_Y1)
Fuzzy_Y.Add(txtF_Y2)
Fuzzy_Y.Add(txtF_Y3)
StatusMotor.Add(txtMotor_Tetap)
StatusMotor.Add(txtMotor_Lambat)
StatusMotor.Add(txtMotor_Sedang)
StatusMotor.Add(txtMotor_Cepat)
End Sub
'Variabel Umur
Var_Berat(0, 0) = txtB_R1.Text
Var_Berat(0, 1) = txtB_R2.Text
Var_Berat(0, 2) = txtB_R3.Text
Var_Berat(1, 0) = txtB_S1.Text
Var_Berat(1, 1) = txtB_S2.Text
Var_Berat(1, 2) = txtB_S3.Text
Var_Berat(2, 0) = txtB_B1.Text
Var_Berat(2, 1) = txtB_B2.Text
Var_Berat(2, 2) = txtB_B3.Text
'Variabel Kemiringan X
Var_X(0, 0) = txtX_R1.Text
Var_X(0, 1) = txtX_R2.Text
Var_X(0, 2) = txtX_R3.Text
Var_X(1, 0) = txtX_S1.Text
Var_X(1, 1) = txtX_S2.Text
Var_X(1, 2) = txtX_S3.Text
Var_X(2, 0) = txtX_T1.Text
Var_X(2, 1) = txtX_T2.Text
Var_X(2, 2) = txtX_T3.Text
'Variabel Kemiringan Y
Var_Y(0, 0) = txtY_R1.Text
Var_Y(0, 1) = txtY_R2.Text
Var_Y(0, 2) = txtY_R3.Text
Var_Y(1, 0) = txtY_S1.Text
Var_Y(1, 1) = txtY_S2.Text
Var_Y(1, 2) = txtY_S3.Text
Var_Y(2, 0) = txtY_T1.Text
Var_Y(2, 1) = txtY_T2.Text
Var_Y(2, 2) = txtY_T3.Text
Last = Fuzzy_Berat.Count - 1
For i = 0 To Last
Fuzzy_Berat(i + 1).Text = ""
If Beban < Var_Berat(i, 1) And i = 0 Then
Fuzzy_Berat(1).Text = "1"
ElseIf Beban > Var_Berat(i, 1) And i = Last Then
Fuzzy_Berat(Last + 1).Text = "1"
ElseIf Beban >= Var_Berat(i, 0) And Beban <= Var_Berat(i, 1) Then
Fuzzy_Berat(i + 1).Text = (Beban - Var_Berat(i, 0)) / (Var_Berat(i, 1) -
Var_Berat(i, 0))
ElseIf Beban >= Var_Berat(i, 1) And Beban <= Var_Berat(i, 2) Then
Last = Fuzzy_X.Count - 1
For i = 0 To Last
Fuzzy_X(i + 1).Text = ""
If Kemiringan_X < Var_X(i, 1) And i = 0 Then
Fuzzy_X(1).Text = "1"
ElseIf Kemiringan_X > Var_X(i, 1) And i = Last Then
Fuzzy_X(Last + 1).Text = "1"
ElseIf Kemiringan_X >= Var_X(i, 0) And Kemiringan_X <= Var_X(i, 1)
Then
Fuzzy_X(i + 1).Text = (Kemiringan_X - Var_X(i, 0)) / (Var_X(i, 1) -
Var_X(i, 0))
ElseIf Kemiringan_X >= Var_X(i, 1) And Kemiringan_X <= Var_X(i, 2)
Then
Fuzzy_X(i + 1).Text = (Var_X(i, 2) - Kemiringan_X) / (Var_X(i, 2) -
Var_X(i, 1))
Else
Fuzzy_X(i + 1).Text = "0"
End If
Next
Last = Fuzzy_Y.Count - 1
For i = 0 To Last
Fuzzy_Y(i + 1).Text = ""
If Kemiringan_Y < Var_Y(i, 1) And i = 0 Then
Fuzzy_Y(1).Text = "1"
ElseIf Kemiringan_Y > Var_Y(i, 1) And i = Last Then
Fuzzy_Y(Last + 1).Text = "1"
ElseIf Kemiringan_Y >= Var_Y(i, 0) And Kemiringan_Y <= Var_Y(i, 1)
Then
Fuzzy_Y(i + 1).Text = (Kemiringan_Y - Var_Y(i, 0)) / (Var_Y(i, 1) -
Var_Y(i, 0))
ElseIf Kemiringan_Y >= Var_Y(i, 1) And Kemiringan_Y <= Var_Y(i, 2)
Then
Fuzzy_Y(i + 1).Text = (Var_Y(i, 2) - Kemiringan_Y) / (Var_Y(i, 2) -
Var_Y(i, 1))
Else
Fuzzy_Y(i + 1).Text = "0"
End If
Next
For i = 0 To 4
Motor_Alpha(i) = 0
Next
For i = 0 To 3
Z_Total(i) = 0
P_Total(i) = 0
Next
For k = 1 To Fuzzy_Berat.Count
For j = 1 To Fuzzy_Y.Count
For i = 1 To Fuzzy_X.Count
If Fuzzy_Berat(k).Text > 0 And Fuzzy_Y(j).Text > 0 And
Fuzzy_X(i).Text > 0 Then
Log += "if BEBAN " & k & " : " & Fuzzy_Berat(k).Text & " and Y "
& j & " : " & Fuzzy_Y(j).Text & " and X " & i & " : " & Fuzzy_X(i).Text & " then "
&
"Motor 1 = " & Motor(0, Pos - 1) &
" Motor 2 = " & Motor(1, Pos - 1) &
" Motor 3 = " & Motor(2, Pos - 1) &
" Motor 4 = " & Motor(3, Pos - 1) & vbCrLf
Log += "min (" & Fuzzy_Berat(k).Text & ", " & Fuzzy_Y(j).Text & ",
" & Fuzzy_X(i).Text & ") = " & W & vbCrLf & vbCrLf
' Tsukamoto
Predikat(Idx) = 1
If Predikat(Idx) > Fuzzy_Berat(k).Text Then
Predikat(Idx) = Fuzzy_Berat(k).Text
End If
If Predikat(Idx) > Fuzzy_Y(j).Text Then
Predikat(Idx) = Fuzzy_Y(j).Text
End If
If Predikat(Idx) > Fuzzy_X(i).Text Then
Predikat(Idx) = Fuzzy_X(i).Text
End If
For h = 0 To 3
If Motor(h, Pos - 1) = "TETAP" Then
Min = txtMotor_Tetap.Text
ElseIf Motor(h, Pos - 1) = "LAMBAT" Then
Min = txtMotor_Lambat.Text
ElseIf Motor(h, Pos - 1) = "SEDANG" Then
Min = txtMotor_Sedang.Text
ElseIf Motor(h, Pos - 1) = "CEPAT" Then
Min = txtMotor_Cepat.Text
End If
Log += vbCrLf
Idx += 1
End If
Next
Next
Next
LAMPIRAN-5