View
19
Download
0
Category
Preview:
Citation preview
25
BAB III
METODE PERANCANGAN
3.1 Tujuan Perancangan
Perancangan adalah tahap terpenting dalam seluruh proses pembuatan alat. Tahap
pertama yang paling penting dalam perancangan adalah membuat blok diagram rangkaian,
kemudian memilih komponen dengan karakteristik yang sesuai dengan kebutuhan. Untuk
pemilihan komponen ini diperlukan data book serta petunjuk lain yang dapat membantu
dalam mengetahui spesifikasi dari komponen tersebut sehingga komponen yang didapat
merupakan pilihan yang tepat bagi alat yang akan dibuat.
Tahap perancangan ini dimulai dari pembuatan blok diagram rangkaian, pemilihan
komponen, pengaturan tata letak komponen (pembuatan layout), pemasangan komponen
sampai dengan proses finishing.
Perancangan alat ini mempunyai tujuan untuk mendapatkan hasil akhir yang baik
seperti yang diharapkan dengan memperhatikan penggunaan komponen yang murah serta
mudah didapatkan di pasaran. Selain itu dengan adanya perancangan tersebut akan
mempermudah kita mencari dan memperbaiki kerusakan peralatan atau rangkaian tersebut.
Dengan adanya perancangan yang baik, maka didapatkan suatu alat yang sesuai dengan
keinginan dari perancang alat itu sendiri.
Dalam pembuatan alat ini terdapat beberapa langkah perencanaan dan
perancangan yang saling berkaitan satu dengan yang lainnya. Secara garis besar, langkah-
langkah perencanaan dan perancangan terdiri atas dua bagian yaitu perancangan hardware
dan perancangan software.
Kemudian ada tahap perancangan elektronik yaitu dengan merancang penyusunan
dengan rangkaian-rangkaian yang dibutuhkan. Sedangkan perancangan mekanik adalah
merancang bentuk body sebagus mungkin dengan ukuran-ukuran yang sesuai agar tidak
mengganggu kerja rangkaian.
26
3.2 Blok Diagram
Blok diagram rangkaian merupakan salah satu bagian terpenting dalam
perancangan suatu alat, karena dari blok diagram rangkaian inilah dapat diketahui cara
kerja rangkaian secara keseluruhan. Sehingga keseluruhan blok diagram rangkaian tersebut
akan menghasilkan suatu sistem yang dapat difungsikan atau dapat bekerja sesuai dengan
perancangan.
Gambar blok diagram balancing robot beroda dua dengan menggunakan sensor
gyroscope dapat di lihat pada gambar 3.1
SENSOR
GYROSCOPE
ARDUINO UNO
(ATMEGA 328)
DRIVER MOTOR
DUAL H-BRIDGE
MOTOR
KIRI
MOTOR
KANAN
Gambar 3.1 Blok diagram balancing robot beroda dua menggunakan sensor gyroscope
27
Tujuan dari pembuatan blok diagram pada gambar diatas yaitu :
a. Sensor gyroscope yang di gunakan merupakan sensor yang mampu mendeteksi
sudut/kemiringan dari robot beroda dua. Jadi sudut yang terbaca akan menjadi masukan
untuk arduino uno
b. Keluaran dari sensor gyroscope berupa kecepatan sudut (deg/s), kemudian akan di ubah
menjadi sudut (deg) dengan menggunakan persamaan Euler ataupun Quaternion
c. Arduino uno merupakan pusat pengendali pada rangkaian ini, yang akan menerima data
dari sensor gyroscope dan kemudian memberikan data keluaran kepada driver motor
Dual H-Bridge sesuai dengan masukan yang di berikan oleh sensor gyroscope.
d. Driver Motor DC yang akan mengatur arah putaran dan kecepatan motor DC setelah
menerima data dari arduino, baik itu maju maupun mundur.
e. Motor DC yang akan berperan sebagai aktuator yang akan menggerakkan robot menuju
arah yang diberikan oleh data masukan sensor gyroscope.
Sistem kerja dari balancing robot ini menggunakan close loop, sebab di perlukan
adanya umpan balik untuk mengontrol output dari sistem. Gambar sistem kerja balancing
robot beroda dua dapat dilihat pada gambar 3.2
Gambar 3.2 Sistem kerja balancing robot beroda dua
Nilai masukan (set point) sistem berupa nilai derajat yang di kehendaki yaitu .
Dari hasil nilai set point, selanjutnya akan dicari nilai dari fungsi keanggotaan error dan
derror, di mana nilai error di dapat dari niliai set point dikurangi dengan hasil pembacaan
sensor, sedangkan untuk nilai derror didapat dari selisih antara nilai error sebelumnya
dengan nilai error sekarang.
28
Setelah mendapat fungsi ke anggotaan dari error dan derror maka akan di buatkan
inference atau evaluasi aturan, evaluasi aturan ini adalah peroses mengevaluasi derajat
keanggotaan tiap-tiap fungsi keanggotaan himpunan fuzzy masukan ke dalam basis aturan
yang ditetapkan. Setelah di tetapkan aturan fuzzy selanjutnya yaitu dilakukan proses
defuzzyfikasi, dimana tujuan dari defuzzyfikasi ini adalah untuk mendapat nilai keluaran
(crisp). Nilai keluaran di sini berupa PWM (Pulse With Modulation) yang akan mengatur
kecepatan dari motor DC. Selanjutnya sensor gyroscope akan bekerja untuk mengukur nilai
derajat robot dan kemudian menjadikan nilai pembacaan sebagai nilai umpan balik negatif.
3.3 Metode Perancangan
Dalam proses perancangan alat ini terbagi menjadi dua, antara lain :
1. Perancangan perangkat keras (Hardware)
2. Perancangan perangkat lunak (Software)
3.3.1 Perancangan perangkat keras (Hardware)
Perancangan hardware terdiri dari beberapa jenis komponen elektronika. Untuk
perancangan ini terdiri dari rangkaian power supply, sensor gyroscope, arduino uno, driver
motor DC, motor DC
Pada perancangan robot ini sangatlah diperlukan rangkaian-rangkaian elektronika
yang menunjang sistem kerja dari robot. Berikut merupakan rangkaian-rangkaian yang
digunakan pada balancing robot beroda dua.
3.3.1.1 Perancangan power suply
Perancangan power supply pada suatu sistem harus mampu memenuhi kebutuhan
tegangan setiap sistem blok. Dalam perancangan ini, rangkaian power supply harus mampu
memenuhi rangkaian sensor gyroscope sebagai pengukur sudut/kemiringan, rangkaian
arduino uno sebagai pusat pengendali rangkaian, serta rangkaian DC driver sebagai
pengendali dan pemberi supplai bagi motor DC.
Masing-masing dari sistem blok tersebut memiliki kebutuhan tegangan yang
berbeda-beda, oleh karena itu rangkaian power supply yang dirancang harus bisa memberi
29
VI1
VO3
GN
D2
REGULATOR 5V7805
VI1
VO3
GN
D2
REGULATOR 9V7809
B112V
C1470u
C2470u
OUTPUT 9 V OUTPUT 5 V
tegangan yang berbeda-beda pula. Bagian power supply terdiri dari baterai dengan tegangan
12 volt DC. Tegangan VDC akan diregulasi terlebih dahulu agar tegangan input sistem
blok tidak melebihi batas maksimal.
Catu daya 12 volt dirangkai dengan IC 7805 untuk memberi tegangan keluaran 5
volt pada blok sistem. Kemudian dirangkai dengan IC 7809 untuk memberi tegangan
keluaran sebesar 9 volt. Keluaran tegangan sebesar 9 volt ini sebagai tegangan masukan
untuk arduino uno. Sedangkan tegangan supply untuk driver motor DC diparalel langsung
dari sumber baterai 12 Volt. Gambar rangkaian power suply dapat dilihat pada gambar 3.3
Gambar 3.3 Rangkaian power suply (Wahyu S.P, 2015)
3.3.1.2 Perancangan driver motor DC
Motor DC dapat bekerja saat diberi tegangan, pada perancangan balancing robot
beroda dua, tegangan yang didapatkan oleh motor DC berasal dari sinyal yang berupa
logika yang dihasilkan oleh mikrokontroller ATMega328 yang diberikan ke pengendali
motor. Gambar skema rangkaian driver motor DC dengan IC L298 dapat dilihat pada
gambar 3.4
30
Gambar 3.4 Skema rangkaian driver motor DC dengan IC L298
(https://technokitavr.wordpress.com/category/pwm-motor-dc/)
Motor DC tidak dapat dikendalikan secara langsung oleh mikrokontroler, karena
kebutuhan arus listrik yang besar pada motor DC sedangkan arus keluaran pada
mikrokontroler sangat kecil. Driver motor merupakan pilihan alternatif yang harus
digunakan untuk mengendalikan motor DC pada mekanik robot beroda ini. Ada beberapa
driver motor yang sering digunakan pada aplikasi - aplikasi mekanik, yaitu menggunakan
rangkaian H-Bridge transistor, H-Bridge mosfet, dan IC driver motor. Pada alat yang akan
dirancang driver motor yang digunakan adalah driver motor dual H-bridge. Gambar
diagram blok dalam IC L298 dapat dilihat pada gambar 3.5
Gambar 3.5 Diagram blok dalam IC L298 (http://www.alldatasheet.com/
31
Rangkaian sistem penggerak motor DC adalah dengan menghubungkan
mikrokontroller dengan rangkaian H-bridge agar motor DC dapat bergerak ke dua arah
yang berlawanan. Motor DC ini dihubungkan langsung ke roda penggerak. Prinsip dasar
dari H-bridge adalah dengan menghubungkan motor dengan empat switch. H-bridge
sederhana dibuat dengan menggunakan dua buah transistor NPN dan dua buah transistor
PNP sebagai switch. Dengan mengubah keadaan dari empat switch tersebut, didapatkan
aliran arus ke motor yang berbeda arah, sehingga akan membuat motor berputar searah
jarum jam atau sebaliknya. Kebenaran IC L298 dapat dilihat pada tabel 3.1
Tabel 3.1 Kebenaran IC L298
(http://jhorobin.blogspot.co.id/2012/01/rangkaian-driver-motor-dc.html
3.3.1.3 Perancangan sensor gyroscope
Pada perancangan ini akan berencana menggunakan sensor gyroscope GY 521
yang memiliki pendeteksi navigasi sudut kemiringan (Z-axis respon) yaitu tingkat
penyimpangan dari keadaan lurus seimbang (pivot point) sebesar ±300°/sec, mengeluarkan
tegangan yang nilainya sebanding dengan nilai kecepatan sudut, nilai tersebut ditentukan
oleh nilai kepekaannya. Nilai kepekaan tersebut memiliki satuan milivolt per derajat per
detik (mV /s). Gyroscope GY 521 memiliki nilai kepekaan antara 5,52 mV /s hingga
6,48 mV /s. Gambar sensor gyroscope GY 521 dapat dilihat pada gambar 3.6
32
Gambar 3.6 Sensor gyroscope GY 521
Pada rangkaian sensor gyroscope GY 521 terdapat 8 pin masukan, tapi di
perancangannya hanya di gunakan 5 pin, yaitu 3,3 V, GND, SCL, SDA, dan INT di mana
Pin 3,3V sebagai tegangan masukan untuk GY 521, GND sebagai ground kemudian pin
SCL dan SDA sebagai masukan analog untuk arduino uno sedangkan pin INT di
hubungkan ke pin 2 digital. Gambar perancangaan sensor gyroscope GY 521 dapat dilihat
pada gambar 3.7
Gambar 3.7 Perancangan sensor gyroscope GY 521
3.3.1.4 Perancangan mikrokontroler ATMega328 (Arduino Uno)
Mikrokontroler yang digunakan dalam sistem ini adalah mikrokontroler dengan
jenis AVR Seri ATMega328. Mikrokontroler ini mempunyai 16 port (A,B,C,D) yang bisa
dijadikan port/pin input dan output. Pemilihan ATMega ini diperkirakan akan
memaksimalkan pembuatan alat yaitu sebagai pengolah data.
33
Dalam perancangan arduino uno, selain mikrokontroller ATMega328, terdapat
juga IC ATMega16U2 yang berperan sebagai pengubah dari USB ke serial dalam
komunikasi dengan komputer yang dimuat dengan sebuah bootloader FDU. Peran IC
ATMega16U2 ini menggantikan ATMega8U2. Gambar rangkaian ATMega 328 dapat
dilihat pada gambar 3.8
Gambar 3.8 Rangkaian ATMega 328P
(https://klyx.wordpress.com/2012/09/20/simpl-arduino/)
Arduino uno beroperasi pada tegangan 5 volt. Namun tegangan input yang
disarankan pada board arduino adalah 7 hingga 11 volt. Sedangkan tegangan input
batasnya adalah 6 sampai 20 volt. Oleh karena itu pada perancangan ini digunakan catu
daya sebesar 9 volt.
fungsi dan bagian yang akan digunakan pada perancangan mulai dari catu daya,
koneksi arduino dengan komputer, input dan output, serta mikrokontroller itu sendiri.
Gambar bord arduino uno dan fungsi masing-masing pin dapat di lihat pada gambar 3.9
34
Gambar 3.9 Rangkaian board arduino uno dan fungsi masing-masing pin
3.3.1.5 Perancangan mekanik
Perancangan mekanik di lakukan untuk menentukan ukuran dan bahan yang tepat
untuk digunakan. Bahan yang digunkan dalam perancangan mekanik robot ini adalah
dengan menggunakan akrilik dengan tebal 2 mm. Perancangan robot ini terdiri dari 3
tingkat, oleh karena itu membutuhkan akrilik sebanyak 3 bidang yang akan disusun.
Tingkat pertama terdiri dari battery 9,6 V, tingkat kedua terdapat sensor
gyroscope, sedangkan tingkat ketiga terdapat arduino uno dan rangkaian DC driver,
sedangkan Motor DC akan melekat pada bagian bawah akrilik.
Gambar rekontruksi balancing robot beroda dua tampak depan dapat dilihat pada
gambar 3.10
Gambar 3.10 Rekontruksi balancing robot beroda dua tampak depan
Arduino Uno
Battery
DC Driver
Gyroscope
35
Sedangkan untuk dimensi dari balancing robot beroda dua bila di lihat dari depan,
samping, atas dan belakang dapat dilihat pada gambar 3.11, 3.12, 3.13 dan 3.14.
Gambar 3.11 Tampak depan
Gambar 3.12 Tampak samping
36
ambar 3.13 Tampak atas
Gambar 3.14 Tampak belakang
37
Gambar bentuk dari balancing robot beroda dua dapat dilihat pada gambar 3.15
Gambar 3.15 Bentuk dari balancing robot beroda dua
3.3.2 Perancangan perangkat lunak (Hardware)
3.3.2.1 Pemodelan fuzzy
Pengendali logika fuzzy akan mengevaluasi setiap input crisp berupa error
dan perubahan error ke dalam tiga tahapan, yaitu fuzzyfikasi, evaluasi aturan dan
deffuzyfikasi. Dalam hal ini pemodelan fuzzy yang digunakan seperti pada gambar 2.19
a. Fuzzyfikasi
Fuzzyfikasi adalah proses pemetaan input crisp ke dalam himpunan-himpunan
fuzzy yang disajikan dalam bentuk fungsi keanggotaan. Tujuan dari fuzzifikasi adalah
mendapatkan derajat keanggotaan dari hasil pemetaan input crisp kedalam fungsi
keanggotaan yang bersesuaian.
Fungsi keanggotaan input (error)
Nilai error didapat dari nilai sudut yang terbaca oleh sensor di kurangi set point yang
di inginkan ( ).
Error = SP - NS
38
Ket :
SP = Set Point yang di inginkan
NS = Nilai Sensor
dimana :
sudut yang terbaca : Plus =
Min =
Nilai error :
Error = SP – NS = 0 – 16 = -16
0 – (-18) = 18
Gambar fungsi keanggotaan error dapat dilihat pada gambar 3.16
Gambar 3.16 Fungsi keanggotaan error
Fungsi keanggotaan error terdiri atas 3 himpunan fuzzy, yaitu Min, Zero dan Plus.
Kemudian untuk nilai ke anggotaan dapat dicari dengan cara sebagai berikut :
µMin[x] = {
;
39
µZero[x] = {
= {
;
Jika error (-7), maka nilai keanggotaanya :
µMin[-7] =
=
= 0,25
µZero[-7] =
=
= 0,12
= x < 4
= -7 < 4 = 0
-8 ≤ x ≤ 0
0 ≤ x ≤ 8
x ≤ -8 atau x ≥ 8
40
Gambar nilai keaggotaan dari error (-7) dapat dilihat pada gambar 3.17
Gambar 3.17 Nilai keanggotaan dari error (-7)
Untuk nilai keanggotaan dari error selanjutnya dapat di lihat pada tabel 3.2 di bawah :
Tabel 3.2 Nilai keanggotaan untuk error
Fungsi keanggotaan input (derror)
Nilia derror didapat dari selisih antara error yang di dapatkan saat ini dengan error
yang di dapatkan sebelumnya.
Error Nilai Keanggotaan ( µ[x] )
Min Zero Plus
-16 1 0 0
-8 0,33 0 0
-7 0,25 0,12 0
-4 0 0,5 0
4 0 0,5 0
7 0 0,12 0,21
8 0 0 0,28
18 0 0 1
41
Dimana :
Error saat ini
Gambar 3.18 Nilai error saat ini
Error sebelumnya
Sehingga di dapatkan fungsi keanggotaan input (derror)
Dimana :
∆error = error saat ini – error sebelumnya
= -21 – (-16) = -5
Gambar 3.19 Nilai error sebelumnya
42
Gambar fungsi keanggotaan derror dapat dilihat pada gambar 3.20
Gambar 3.20 Fungsi keanggotaan ∆error
Fungsi keanggotaan derror terdiri atas 3 himpunan fuzzy, yaitu Min, Zero dan
Plus. Kemudian untuk nilai ke anggotaan dapat dicari dengan cara sebagai berikut :
µMin[x] = {
;
µZero[x] = {
;
x ≤ -4 atau x ≥ 4
-4 ≤ x
0 ≤ x
43
µPlus[x] = {
;
Jika derror (-3) maka nilai keanggotaanya :
µMin[-3] =
=
= 0,33
µZero[-3] =
=
= 0,25
µPlus[-3] = x < 2
= -3 < 2 = 0
Gambar nilai keanggotaan dari derror (-3) dapat dilihat pada gambar 3.21
Gambar 3.21 Nilai keanggotaan dari derror (-3)
Untuk nilai keanggotaan dari derror selanjutnya dapat di lihat pada tabel 3.3
x ≤ 2
2 ≤ x ≤ 5
x ≥ 5
44
Tabel 3.3 Nilai keanggoataan untuk Derror
Fungsi keanggotaan keluaran (kecepatan motor DC)
Pada keluaran sistem model sugeno, pembentukan fungsi keluaran pada model
sugeno memiliki fungsi yang lebih sederhana dengan respon lebih cepat dari model
lain. Bentuk keluaran fungsi keanggotaan pada model sugeno mempunyai bentuk
singletone, bentuk dengan derajat keanggotaan satu pada suatu nilai crisp tunggal dan
nilai nol pada suatu crisp yang lain.
Karena keluaran dalam bentuk singletone maka fungsi pada setiap nilai linguistik
bernilai satu dan nol. Keluaran pada sistem yang dibuat ada dua, yaitu PWM
pengontrol motor dc kanan dan kiri. Untuk keluaran sistem yang berupa kecepatan
memiliki 3 nilai linguistik, yaitu : PELAN, SEDANG, CEPAT. Gambar fungsi
keanggotaan keluaran (kecepatan motor DC) dapat dilihat pada gambar 3.22
Gambar 3.22 Fungsi keanggotaan keluaran (kecepatan motor DC)
Derror Nilai keanggotaan ( µ[x] )
Min Zero Plus
-5 1 0 0
-4 0,66 0 0
-3 0,33 0,25 0
-2 0 0,5 0
2 0 0,5 0
3 0 0,25 0,33
4 0 0 0,66
5 0 0 1
45
b. Evaluasi aturan
Pada basis aturan, terjadi proses pengolahan data masukan fuzzyfikasi dengan
hasil keluaran yang dikehendaki dengan aturan-aturan tertentu. Dari aturan-aturan yang
dibentuk inilah yang nantinya akan menentukan respon dari sistem terhadap berbagai
kondisi set point dan gangguan yang terjadi pada sistem yang akan dibuat. Gambar variabel
error, variabel derror dan variabel kecepatan motor DC dapat dilihat pada gambar 3.23 dan
evaluasi aturan sistem fuzzy dapat dilihat pada tabel 3.4
Gambar 3.23 (a) Variabel error , (b) variabel derror, dan (c) Variabel kecepatan motor DC
Tabel 3.4 Evaluasi aturan sistem fuzzy
(a) (b)
(c)
Pelan
46
Berdasarkan tabel 3.4, maka sistem mempunyai 9 aturan fuzzy, yaitu :
1. Jika error = Min dan d_error = Min maka motor DC = Cepat.
2. Jika error = Min dan d_erro = Zero maka motor DC = Pelan.
3. Jika error = Min dan d_error = Plus maka motor DC = Sedang.
4. Jika error = Zero dan d_error = Min maka motor DC = Pelan.
5. Jika error = Zero dan d_error = Zero maka motor DC = Pelan.
6. Jika error = Zero dan d_error = Plus maka motor DC = Sedang.
7. Jika error = Plus dan d_error = Min maka motor DC = Sedang.
8. Jika error = Plus dan d_error = Zero maka motor DC = Sedang.
9. Jika error = Plus dan d_error = Plus maka motor DC = Cepat.
Selanjutnya akan dicari α-predikat dan nilai Z untuk masing – masing aturan :
[R1] jika error Min dan d_error Min maka (Z1) motor DC = Cepat
= µerMin ∩ µderMin
= min ( µerMin[-7] , µderMin[-3] )
= min ( 0,25 ; 0,33)
= min (0,25)
Sehingga di dapatkan nilai Z1 = 150
[R2] jika error = Min dan d_error = Zero maka (Z2) motor DC = Pelan.
= µerMin ∩ µderZero
= min (µerMin[-7] , µderZero[-3] )
= min ( 0,25 ; 0,25)
= min (0,25)
Sehingga di dapatkan nilai Z2 = 90
[R3] Jika error = Min dan d_error = Plus maka (Z3) motor DC = Sedang
= µerMin ∩ µderPlus
= min ( µerMin[-7] , µderPlus[-3] )
47
= min ( 0,25 ; 0 )
= min (0)
Sehingaa di dapatkan nilai Z3 = 100
[R4] Jika error = Zero dan d_error = Min maka (Z4) motor DC = Pelan.
= µerZero ∩ µderMin
= min ( µerZero[-7] , µderMin[-3] )
= min ( 0,12 ; 0,33)
= min (0,12)
Sehhingga didapatkan nilai Z4 = 90
[R5] Jika error = Zero dan d_error = Zero maka (Z5) motor DC = Pelan.
= µerZero ∩ µderZero
= min ( µerZero[-7] , µderZero[-3] )
= min (0,12 ; 0,25 )
= min (0,12)
Sehingga di dapatkan nilai Z5 = 90
[R6] Jika error = Zero dan d_error = Plus maka (Z6) motor DC = Sedang.
= µerZero ∩ µderPlus
= min (µerZero[-7] , µderPlus[-3] )
= min ( 0,12 ; 0 )
= min (0)
Sehingga didapatkan nilai Z6 = 100
48
[R7] Jika error = Plus dan d_error = Min maka (Z7) motor DC = Sedang.
= µerPlus ∩ µderMin
= min ( µerPlus[-7] , µderMin[-3] )
= min (0 ; 0,33)
= min ( 0)
Sehingga didapatkan nilai Z7 = 100
[R8] Jika error = Plus dan d_error = Zero maka (Z8) motor DC = Sedang.
= µerPlus ∩ µderZero
= min ( µerPlus[-7] , µderZero[-3] )
= min (0 ; 0,25 )
= min (0)
Sehingga didapaatkan nilai Z8 = 100
[R9] Jika error = Plus dan d_error = Plus maka (Z9) motor DC = Cepat.
= µerPlus ∩ µderPlus
= min ( µerPlus[-7] , µderPlus[-3] )
= min (0 ; 0 )
= min (0)
Sehingga didapatkan nilai Z9 = 150
c. Defuzzyfikasi
Deffuzyfikasi merupakan pemetaan bagi nilai-nilai fuzzy keluaran yang
dihasilkan pada tahap evaluasi aturan ke nilai-nilai keluaran kuantitatif. Pada perancangan
robot ini proses deffuzifikasi menggunakan metode rata-rata terpusat dan keluaran dari
proses deffuzifikasi berupa nilai PWM yang nantinya digunakan untuk mengontrol
kecepatan motor DC.
49
Z =
∑
∑
Z =
Z =
Z =
= 110, 27
Untuk nilai deffuzifikasi (keluaran) dari error dan derror selanjutnya dapat dilihat
pada tabel 3.5
Tabel 3.5 Nilai deffuzifikasi dari error dan derror
3.3.2.2. Arduino software
Tugas dari Arduino software adalah menghasilkan sebuah file berformat hex yang
akan di-download pada papan arduino atau papan sistem mikrokontroler lainnya. Ini mirip
dengan Microsoft Visual Studio, Eclipse IDE, atau Netbeans. Lebih mirip lagi adalah IDE
semacam Code Blocks, Code Lite atau Anjuta yang mempermudah untuk menghasilkan file
program. Bedanya kesemua IDE tersebut menghasilkan program dari kode bahasa C
Error Derror Deffuzifikasi (keluaran)
-16 -5 150
-8 -4 150
-7 -3 110
-4 -2 90
4 2 90
7 3 115
8 4 150
18 5 150
50
(dengan GNU GCC) sedangkan arduino software (Arduino IDE) menghasilkan file hex dari
baris kode yang dinamakan sketch.
Pada perancangan software ini, diatur bagaimana kerja dari program dengan
menggunakan instruksi-instruksi yang ada pada mikrokontroller Atmega328 atau arduino
uno sehingga input dan outputnya dapat langsung bekerja.
Program dibuat dalam bahasa C menggunakan software arduino.cc, Kemudian
disimulasikan untuk mendapatkan file hexadesimal dari program yang telah dibuat.
Selanjutnya file hexadesimal tersebut di download ke dalam flash eeprom arduino uno.
Gambar tampilan pada perangkat lunak arduino dapat dilihat pada gambar 3.24
Gambar 3.24 Tampilan pada perangkat lunak arduino
51
3.4 Flowchart Balancing Robot Beroda Dua menggunakan Sensor Gyroscope
Flowchart berfungsi untuk mengetahui bagaimana algoritma dari sistem
pergerakan robot. Gambar diagram alir balancing robot beroda dua dengan menggunakan
sensor gyroscope dapat dilihat pada gambar 3.25
Gambar 3.25 Diagram alir balancing robot roda dua dengan menggunakan sensor gyroscope
YA EVALUASI ATURAN
Metode MIN
FUZZYFIKASI
1. Fungsi keanggotaan input (error dan derror)
2. Fungsi keanggotaan keluaran (kecepatan motor DC)
SUDUT = X
PEMBACAAN
DATA SERIAL
PERSIAPAN
SISTEM
DEFFUZIFIKASI
Mencari nilai rata-
rata terpusat
Output PWM
ke motor
SEIMBANG TIDAK
YA
52
Pertama-tama robot di hidupkan dengan menekan tombol ON. Selanjutnya saat di
letakkan di bidang datar, roda dari robot dalam keadaan diam. Sehingga saat di letakkan
robot tidak langsung bergerak. Selanjutnya sensor gyroscope mulai melakukan pembacaan
sudut sesuai dengan arah jatuh robot dan nilai sudut yang di ambil adalah sudut x. Setelah
nilai sudut di ketahui, selanjutnya di lakukan proses fuzzifikasi di mana dalam proses
fuzzyfikasi akan di cari nilai error dan derror di mana nilai error di dapatkan dari set poin
di kurangi dengan nilai pembacaan sensor sedangkan untuk derror di dapatkan dari nailai
error saat ini di kurangi dengan nilai error sebelumnya.
Setelah proses fuzzifikasi, selanjutnya akan di buat evaluasi aturan di mana dalam
proses basis aturan di gunakan metode MIN. Evaluasi aturan ini nantinya akan menentukan
respon dari sistem terhadap berbagai kondisi set point dan gangguan yang terjadi pada
sistem yang akan di buat. Proses selanjutnya yaitu deffuzyfikasi, deffuzyfikasi merupakan
pemetaan bagi nilai-nilai fuzzy keluaran yang dihasilkan pada tahap evaluasi aturan ke
nilai-nilai keluaran kuantitatif. Proses deffuzyfikasi menggunakan metode rata-rata
terpusat dan keluaran dari proses deffuzifikasi berupa nilai PWM yang nantinya digunakan
untuk mengontrol kecepatan motor DC.
Kecepatan motor DC yg di kontrol oleh PWM nantinya akan membuat robot
dalam kondisi seimbang atau tidak, jika robot tidak dalam kondisi seimbang, maka proses
akan di ulangi ke pambacaan sudut, begitu juga sebaliknya jika robot dalam kondisi
seimbang proses akan di ulangi ke pembacaan sudut.
Recommended