Upload
others
View
11
Download
0
Embed Size (px)
Citation preview
SISTEM NAVIGASI PADA MOBILE ROBOT MENGGUNAKAN SENSOR
KOMPAS
TUGAS AKHIR
Program Studi
S1 Sistem Komputer
Oleh:
M. NUR HIDAYAT MA’ARIF
13.41020.0085
FAKULTAS TEKNOLOGI DAN INFORMATIKA INSTITUT BISNIS DAN INFORMATIKA STIKOM SURABAYA 2016
SISTEM NAVIGASI PADA MOBILE ROBOT MENGGUNAKAN SENSOR
KOMPAS
TUGAS AKHIR
Diajukan sebagai salah satu syarat untuk menyelesaikan
Program Sarjana Komputer
Oleh:
Nama : M.Nur Hidayat Ma’arif
Nim : 13.41020.0085
Program : S1 (Strata Satu)
Fakultas : Teknologi dan Informatika
Jurusan : Sistem Komputer
INSTITUT BISNIS DAN INFORMATIKA STIKOM
SURABAYA
2017
ii
“Tidak ada hal yang tidak bisa dikerjakan asalkan ada niat dan kemauan yang
sungguh-sungguh”
-M.Nur Hidayat Ma’arif -
iii
Kupersembahkan Kepada
ALLAH SWT
Ibu, Bapak dan semua keluarga tercinta,
Yang selalu mendukung, memotivasi dan menyisipkan nama saya dalam doa-doa
terbaiknya.
Beserta semua orang yang selalu membantu, mendukung dan memotivasi agar
tetap berusaha menjadi lebih baik.
iv
v
vi
ABSTRAKSI
Mobile robot merupakan konstruksi robot yang biasanya memiliki
penggerak yang berupa roda, kaki, maupun kipas sekalipun, sehingga dapat
melakukan perpindahan posisi dari titik ke titik lain. Mobile robot mempunyai ciri
khas yaitu pergerakannya secara otomatis yang didukung oleh sensor-sensor
elektronik.
Untuk dapat berpindah posisi dibutuhkan sebuah sistem navigasi yang
dapat mengambil suatu arah yang benar, Sehingga, pada penelitian ini berinovasi
untuk membuat sebuah Mobile robot yang dapat mengambil arah sebagai sistem
navigasi. Untuk melakukan hal seperti itu dibutuhkan suatu sensor yaitu sensor
kompas. Sensor kompas yang dipakai CMPS03. Dengan motor sebagai penggerak
dari Mobile robot dan juga menggunakan sensor garis untuk indikator telah
sampai ke tujuan dan dalam penelitian ini juga bertujuan agar mobile robot dapat
kembali ke posisi awal bergerak.
Berdasarkan penelitian yang dilakukan didapatkan hasil bahwa Mobile
robot mampu kembali ke posisi awal robot bergerak dengan sensor kompas
dengan tingkat keberhasilan 70% pada setpoint 0 ̊, 90% pada setpoint 45 ̊, 80%
pada setpoint 90 ̊, 90% pada setpoint 135 ̊, 80% pada setpoint 180 ̊, 60% pada
setpoint 225 ̊, 50% pada setpoint 270 ̊,80% pada setpoint 315 ̊.
Kata Kunci : Metode PID (Proporsional-Integral- Derivativ), Arduino, Sensor
Kompas CMPS03
vii
KATA PENGANTAR
Puji syukur kehadirat Allah SWT, karena berkat limpahan Rahmat serta
Karunia-Nya penulis dapat menyelesaikan Tugas Akhir yang merupakan
persyaratan dalam menyelesaikan Program Studi Strata Satu Jurusan Sistem
Komputer di Institut Bisnis dan Informatika Stikom Surabaya. Tugas Akhir ini
berjudul “Sistem Navigasi Pada Mobile Robot Menggunakan Sensor Kompas”.
Pada kesempatan ini, penulis juga mengucapkan terima kasih kepada :
1. Allah Subhanahu Wa Ta'ala yang memberikan kemudahan dan kelancaran
kepada penulis untuk menyelesaikan Tugas Akhir ini dengan baik.
2. Kedua Orang tua yang memberikan dukungan material dan spiritual kepada
penulis dan motivasi – motivasi yang telah diberikan
3. Bpk. Prof. Dr. Budi Jatmiko, M.Pd., selaku Rektor Institut Bisnis dan
Informatika Stikom Surabaya yang peduli terhadap Program Studi Sistem
Komputer.
4. Dr. Jusak selaku Dekan Falkultas Teknologi dan Informatika Institut Bisnis
dan Informatika Stikom Surabaya.
5. Anjik Sukmaaji, S. Kom., M. Eng., selaku Kaprodi Sistem Komputer Institut
Bisnis dan Informatika Stikom Surabaya yang telah membantu dan
membimbing penulis selama masa kuliah dan juga sebagai Dosen Penguji.
6. Harianto, S.Kom., M.Eng., selaku Dosen Pembimbing I, dan Ira Puspasari,
S.Si. M.T., selaku Dosen Pembimbing II, yang telah membimbing dan
membantu penulis dalam menyelesaikan Tugas Akhir ini.
viii
7. Segenap Dosen Pengajar Program Studi S1 Sistem Komputer yang telah
banyak memberikan ilmu, motivasi, serta dukungan selama masa kuliah.
8. Teman–teman seperjuangan angkatan 2013 Jurusan S1 Sistem Komputer yang
telah mendukung dan membantu penulis selama masa perkuliahan dan
penyusunan buku Tugas Akhir.
9. Teman–teman TIM ROBOT Institut Bisnis dan Informatika Surabaya.
10. Seluruh pihak yang tidak dapat penulis tuliskan satu persatu yang telah
membantu serta memberi inspirasi penulis secara langsung maupun tidak
langsung.
Banyak hal dalam laporan Tugas Akhir ini yang masih perlu diperbaiki
lagi. Oleh karena itu penulis mengharapkan saran dan kritik yang membangun
dari semua pihak agar dapat menyempurnakan penulisan ini kedepannya. Penulis
juga meminta maaf yang sebesar-besarnya jika terdapat kata-kata yang salah serta
menyinggung perasaan pembaca. Akhir kata penulis ucapkan terima kasih kepada
para pembaca, semoga laporan ini dapat bermanfaat bagi semua pembacanya.
Surabaya, Januari 2017
Penulis
ix
DAFTAR ISI
HALAMAN JUDUL .................................................................................................. i
HALAMAN SYARAT .............................................................................................. ii
MOTTO...................................................................................................................... iii
HALAMAN PERSEMBAHAN ................................................................................. iv
HALAMAN PENGESAHAN .................................................................................... v
HALAMAN PERNYATAAN ................................................................................... vi
ABSTRAKSI.............................................................................................................. vii
KATA PENGANTAR ............................................................................................... viii
DAFTAR ISI .............................................................................................................. x
DAFTAR GAMBAR ................................................................................................. xiii
DAFTAR TABEL ...................................................................................................... xv
BAB I PENDAHULUAN .......................................................................................... 1
10.1 Latar Belakang Masalah .......................................................................... 1
10.2 Rumusan Masalah ................................................................................... 2
10.3 Batasan Masalah ...................................................................................... 2
10.4 Tujuan ..................................................................................................... 3
10.5 Sistematika Penulisan .............................................................................. 3
BAB II LANDASAN TEORI .................................................................................... 5
2.1 Pengertian PID Controller........................................................................ 5
2.2 Sensor ....................................................................................................... 6
2.2.1 Sensor Kompas CMPS03 ............................................................... 6
x
2.2.2 Sensor Photodioda ......................................................................... 8
2.3 Arduino ..................................................................................................... 9
2.4 Arduino UNO ........................................................................................... 9
2.5 Arduino IDE ............................................................................................. 14
2.6 Motor DC ................................................................................................. 15
2.7 Motor Driver ............................................................................................ 19
2.8 LCD 16 x 2 (Liquid Crystal Display) ....................................................... 21
BAB III METODE PENELITIAN ............................................................................. 24
3.1 Metode Penelitian ..................................................................................... 24
3.2 Metode PID (Proporsional-Integral- Derivativ) ...................................... 27
3.3 Perancangan Prangkat Keras .................................................................... 29
3.3.1 Desain Mekanik .............................................................................. 29
3.3.2 Lintasan Robot ............................................................................... 30
3.3.3 Komunikasi Kompas dengan Arduino ........................................... 31
3.4 Sistem navigasi ......................................................................................... 32
BAB IV HASIL DAN PEMBAHASAN ................................................................... 34
4.1 Pengujian Ketelitian Sensor Kompas CMPS03Dengan kompas .............. 34
4.1.1 Tujuan Pengujian Ketelitian Sensor Kompas ................................. 34
4.1.2 Alat yang Digunakan dalam Ketelitian Sensor Kompas ................ 34
4.1.3 Prosedur Pengujian Ketelitian Sensor Kompas .............................. 35
4.1.4 Hasil dari Pengujian Sensor kompas .............................................. 35
4.2 Pengujian Respon Sistem ........................................................................ 36
4.2.1 Tujuan Pengujian Respon Sistem .................................................. 36
xi
4.2.2 Alat yang Digunakan dalam Pengujian Respon Sistem ................ 36
4.2.3 Prosedur Pengujian Respon Sistem ................................................ 37
4.2.4 Hasil Pengujian dari Respon Sistem .............................................. 38
4.3 Pengujian Sistem Keseluruhan ................................................................. 50
4.3.1 Tujuan Pengujian Sistem Keseluruhan .......................................... 50
4.3.2 Alat yang Digunakan dalam Pengujian Sistem Keseluruhan ......... 50
4.3.3 Prosedur Pengujian Sistem Keseluruhan ........................................ 51
4.3.4 Hasil Pengujian Sistem Keseluruhan ............................................. 52
BAB V PENUTUP ..................................................................................................... 55
5.1 Kesimpulan ............................................................................................... 55
5.2 Saran ......................................................................................................... 55
DAFTAR PUSTAKA ................................................................................................ 57
LAMPIRAN ............................................................................................................... 58
BIODATA PENULIS ................................................................................................ 71
xii
DAFTAR GAMBAR
2.1 Gambar Sistem Kendali Closed loop PID .................................................. 5
2.2 Gambar Sensor Kompas CMPS03 .............................................................. 6
2.3 Gampar Sensor Photodiode ........................................................................ 9
2.4 Gambar Arduino UNO ............................................................................... 10
2.5 Gambar Power Arduino UNO .................................................................... 11
2.6 Gambar Toolbar Arduino IDE .................................................................... 15
2.7 Gambar Motor DC ...................................................................................... 16
2.8 Gambar Bagian–Bagian Motor DC ............................................................ 16
2.9 Gambar Prinsip Kerja Motor DC ................................................................ 18
2.10 Gambar Motor Driver L298N .................................................................. 20
2.11 Gambar Konfigurasi Pin LCD .................................................................. 23
3.1 Gambar Pengujian Arah ............................................................................. 24
3.2 Gambar Diagram Rangkaian Alat .............................................................. 26
3.3 Gambar Diagram Kontrol PID .................................................................... 28
3.4 Gambar Mekanik Tampak Samping ........................................................... 29
3.5 Gambar Mekanik Tampak Atas .................................................................. 29
3.6 Gambar Mekanik Tampak Depan ............................................................... 30
3.7 Gambar Lintasan Robot .............................................................................. 31
3.8 Gambar Port CMPS03 ................................................................................ 31
3.9 Gambar Flowchart Sistem Navigasi ........................................................... 33
4.1 Gambar Grafik Respon dengan Setpoint 0̊ .................................................. 39
xiii
4.2 Gambar Grafik Respon dengan Setpoint 45̊ ............................................... 40
4.3 Gambar Grafik Respon dengan Setpoint 90 ............................................... 41
4.4 Gambar Grafik Respon dengan Setpoint 135̊ ............................................. 42
4.5 Gambar Grafik Respon dengan Setpoint 180̊ ............................................. 44
4.6 Gambar Grafik Respon dengan Setpoint 225̊ ............................................. 45
4.7 Gambar Grafik Respon dengan Setpoint 270̊ ............................................. 46
4.8 Gambar Grafik Respon dengan Setpoint 315̊ ............................................. 48
4.9 Gambar Grafik Respon PID Percobaan 1 ................................................... 49
4.10 Gambar Grafik Respon PID Percobaan 2 ................................................. 49
4.11 Gambar Grafik Respon PID Percobaan 3 ................................................. 50
xiv
DAFTAR TABEL
2.1 Tabel Register CMPS03 ............................................................................. 8
2.2 Tabel Spesifikasi Arduino .......................................................................... 10
2.3 Tabel Fitur L298N ...................................................................................... 20
2.4 Tabel Konfigurasi Pin LCD ........................................................................ 22
3.1 Tabel Derajat Arah Mata Angin ................................................................. 25
4.1 Tabel Pengujian Sesnsor Kompas dengan Kompas Smartphone ............... 35
4.2 Tabel Pengujian Respon Terhadap Setpoint 0 ̊ ......................................... 38
4.3 Tabel Pengujian Respon Terhadap Setpoint 45 ̊ ........................................ 39
4.4 Tabel Pengujian Respon Terhadap Setpoint 90 ̊ ........................................ 40
4.5 Tabel Pengujian Respon Terhadap Setpoint 135̊ ........................................ 42
4.6 Tabel Pengujian Respon Terhadap Setpoint 180 ̊ ...................................... 43
4.7 Tabel Pengujian Respon Terhadap Setpoint 225 ̊ ...................................... 44
4.8 Tabel Pengujian Respon Terhadap Setpoint 270 ̊ ...................................... 46
4.9 Tabel Pengujian Respon Terhadap Setpoint 315 ̊ ...................................... 47
4.10 Tabel Pengujian Sistem Keseluruhan ....................................................... 52
xv
BAB 1
PENDAHULUAN
1.1 Latar Belakang Masalah
Mobile robot merupakan konstruksi robot yang biasanya memiliki
penggerak yang berupa roda, kaki, maupun kipas sekalipun, sehingga dapat
melakukan perpindahan posisi dari titik ke titik lain. Mobile robot mempunyai ciri
khas yaitu pergerakannya secara otomatis yang didukung oleh sensor-sensor
elektronik. Agar tidak salah dalam menentukan arah maka robot harus dilengkapi
dengan sistem navigasi. Sehingga robot dapat mengambil arah yang benar, ke
arah mana yang diharapkan untuk mencapai titik tertentu dan memungkinkan
untuk sampai ke posisi tujuan mobile robot.
Line follower atau Line tracer robot adalah mobile robot yang bisa
bergerak mengikuti jalur panduan garis. Garis pandu yang di gunakan dalam hal
ini adalah garis putih yang di tempatkan pada permukaan berwarna gelap, atupun
sebaliknya, garis hitam yang ditempatkan pada permukaan berwarna putih
(Riwaldi, Jurnal Gunadarma, Vol 2: 2005).
Agar sebuah mobile robot dapat bergerak menurut arah mata angin dan
tidak perlu mengikuti garis lagi tentunya diperlukan sensor elektronik. Oleh
karena itu dibutuhkan suatu sensor kompas, dimana mobile robot ini
menggunakan sensor kompas CMPS03 yang digunakan sebagai navigasi untuk
mobile robot.
1
2
Sensor kompas CMPS03 ini digunakan sebagai navigasi untuk
menentukan arah tujuan mobile robot. Sensor kompas CMPS03 menggunakan
sensor medan magnet Philips KMZ51 yang tergolong baik dalam mendeteksi
medan magnet di bumi ini, sehingga sesuai untuk mobile robot yang
menggunakan sistem navigasi yang digunakan untuk menentukan arah tujuan.
Karena sebuah mobile robot membutuhkan suatu arah untuk melakukan
navigasi, maka dari itu dibutuhkan suatu sistem navigasi yang dapat memberikan
suatu informasi yang berupa suatu arah terhadap mobile robot, sehingga, dalam
penelitian ini bertujuan untuk menentukan arah, dengan menggunakan sensor
kompas.
1.2 Rumusan Masalah
Adapun rumusan masalah pada Tugas Akhir ini yaitu:
1. Bagaimana melakukan navigasi secara otomatis pada mobile robot untuk
menentukan arah dengan sensor kompas ?
2. Bagaimana cara mobile robot kembali ke posisi awal robot bergerak dengan
sensor kompas ?
1.3 Batasan Masalah
Dalam perancangan dan pembuatan simulasi ini, terdapat beberapa batasan
masalah, antara lain:
1. Kalibrasi saat pertama kali dijalankan.
2. Penggunaan sensor harus pada bidang datar.
3
3. Peletakan sensor harus dijauhkan dari benda yang memiliki medan magnet.
4. Sensor kompas yang digunakan CMPS03.
1.4 Tujuan
Adapun tujuan dari pada Tugas Akhir ini yaitu:
1. Mampu melakukan navigasi secara otomatis pada mobile robot untuk
menentukan arah dengan sensor kompas.
2. Mampu kembali ke posisi awal mobile robot bergerak dengan sensor kompas.
1.5 Sistematika Penulisan
Laporan Tugas Akhir ini ditulis dengan sistematika penulisan sebagai
berikut:
BAB I : PENDAHULUAN
Bab ini membahas tentang latar belakang masalah, perumusan masalah,
pembatasan masalah, tujuan penulisan laporan, dan sistematika penulisan.
BAB II : LANDASAN TEORI
Bab ini membahas tentang berbagai teori yang mendukung penelitian.
Hal tersebut meliputi Arduino, Sensor Kompas CMPS03, Motor Driver, Sensor
Photodiode, dan Motor.
BAB III : METODE PENELITIAN
Dalam bab ini dijelaskan tentang metode penelitian serta alasan
penggunaan metode tersebut dalam penelitian. Pada bab ini dijelaskan pula
tentang pembuatan perangkat keras (hardware) dengan menggabungkan
4
perangkat lunak (software) sebagai pengontrol pada alat tersebut, serta penerapan
metode penelitian pada alat ini.
BAB IV : PENGUJIAN DAN ANALISIS SISTEM
Bab ini berisi tentang pengujian secara keseluruhan. Pengujian yang
dilakukan meliputi pengujian berapa error saat mencari arah yang dituju, berapa
error saat mobile robot sampai ke tujuan dan pengujian secara keseluruhan mobile
robot berhasil sampai kearah yang dituju.
BAB V : PENUTUP
Bab ini berisi tentang kesimpulan penelitian serta saran untuk
pengembangan penelitian.
BAB II
LANDASAN TEORI
Teori-teori yang digunakan dalam perancangan perangkat keras dan
perangkat lunak adalah studi dari keputusan berupa data-data literatur dari
masing-masing komponen, informasi dari internet serta konsep-konsep teori buku
penunjang, antara lain:
2.1 Pengertian PID Controller
Pengendali PID merupakan pengendali yang terdiri atas pengendali
Proporsional, Integral, dan Turunan (Derivative). Dalam pengaplikasian, masing
masing pengendali dapat berdiri sendiri atau dapat melakukan pengkombinasian.
Dalam perancangan sistem kontrol PID yang perlu dilakukan adalah mengatur
parameter P, I, atau D agar tanggapan sinyal keluaran sistem terhadap masukan
tertentu sebagaimana yang diinginkan.
Gambar 2.1 Sistem Kendali Closed Loop PID
Gambar 2.1 menjelaskan mengenai suatu sistem kendali closed loop PID,
SP adalah nilai setpoint, nilai referensi yang diinginkan. Error dihasilkan ketika
5
6
nilai output sistem berbeda dengan nilai setpoint. Sinyal error ini kemudian
nantinya apakah di proporsional, diintegral atau diturunkan, hingga sinyal output
bernilai sama dengan nilai setpoint.
2.2 Sensor
Sensor adalah suatu alat yang dapat mengukur atau mendeteksi kondisi
sebenarnya di dunia nyata, seperti pergerakan,panas atau cahaya dan mengubah
kondisi nyata tersebut ke dalam bentuk analog atau digital.
2.2.1 Sensor Kompas CMPS03
Dari Gambar 2.2 merupakan sensor kompas CMPS03 jenis kompas digital
buatan Devantech Ltd. Sensor CMPS03 ini menggunakan sensor medan magnet
Philips KMZ51 yang cukup sensitif mendeteksi medan magnet bumi. Kompas ini
hanya membutuhkan suplai tegangan sebesar 5 Vdc dengan arus yang mengalir
sebesar 15 mA. Ada dua cara mendapatkan informasi arah dari modul kompas
digital ini yaitu dengan membaca sinyal PWM (Pulse Width Modulation) pada pin
4 atau dengan pembacaan data interface I2C pada pin 2 dan 3 (Soebhakti,2008).
Gambar 2.2 Sensor Kompas CMPS03
7
Cara akses sensor CMPS03 ada 2 yaitu:
1. PWM Interface
Sinyal PWM adalah sebuah sinyal yang telah dimodulasi lebar pulsanya.
Pada CMPS03, lebar pulsa positif merepresentasikan sudut arah. Lebar pulsa
bervariasi antara 1mS (00) sampai 36.99mS (359.90). Dengan kata lain lebar
pulsa berubah sebesar 100µS setiap derajatnya. Sinyal akan low selama 65mS
diantara pulsa, sehingga total periodanya adalah 65mS + lebar pulsa positif (antara
66mS sampai 102mS). Pulsa tersebut dihasilkan oleh timer 16 bit di dalam
prosesornya, yang memberikan resolusi 1µS. Selain PWM, CMPS03 juga
dilengkapi dengan interface I2C yang dapat digunakan untuk membaca data arah
dalam bentuk data serial. Pada mode 8 bit, arah utara ditunjukkan dengan data
255dengan resolusi 1,40625 derajat/bit. Pada mode 16 bit, arah utara ditunjukkan
dengan data 65535 sehingga resolusinya menjadi 0,0055 derajat/bit.
2. I2C Interface
Pin 2 dan 3 adalah jalur komunikasi I2C dan dapat digunakan untuk
membaca data arah (bearing). Jika jalur I2C tidak digunakan, maka pin ini harus
di pull up (ke +5V) melalui resistor yang nilainya sekitar 47K, nilai resistor tidak
kritikal. I2C communication protocol dimulai dengan mengirimkan start bit,
address modul digital compass dengan read/write low (0xC0), kemudian nomor
register yang akan dibaca. Selanjutnya diikuti dengan start bit lagi, address modul
digital compass dengan read/write high (0xC1). Selanjutnya membaca satu atau
dua register (8 bit atau 16 bit). Untuk register 16 bit, yang pertama kali dibaca
adalah high byte. CMPS03 memiliki 16 register sesuai Tabel 2.1.
8
Tabel 2.1 Register CMPS03
Register Function 0 Software Revision Number 1 Compass Bearing as a byte, i.e. 0-255 for a full
circle 2,3 Compass Bearing as a word, i.e. 0-3599 for a full
circle, representing 0-359.9 degrees.
4,5 Internal Test - Sensor1 difference signal - 16 bit signed word
6,7 Internal Test - Sensor2 difference signal - 16 bit signed word
8,9 Internal Test - Calibration value 1 - 16 bit signed word
10,11 11 Internal Test - Calibration value 2 - 16 bit signed word
Unused - Read as Zero Unused - Read as Zero Unused - Read as Zero Calibrate Command - Write 255 to perform
calibration step. See text. 2.2.2 Sensor Photodiode
Sensor photodiode adalah dioda yang sensitif terhadap cahaya. Ketika
sebuah cahaya mengenai langsung kepada photodiode akan mengakibatkan
meningkatnya kebocoran arus balik seperti pada Gambar 2.3 Sensor photodiode
bisa juga digunakan untuk mendeteksi ada atau tidaknya suatu obyek. Bila obyek
berada di depan sensor dan dapat terjangkau oleh sensor maka output rangkaian
sensor akan berlogika “1” atau “high” yang berarti obyek “ada”. Sebaliknya jika
obyek berada pada posisi yang tidak terjangkau oleh sensor maka output
rangkaian sensor akan bernilai “0” atau “low” yang berarti obyek “tidak ada”.
9
Gambar 2.3 Sensor Photodiode
2.3 Arduino
Arduino adalah sistem purnarupa elektronika (electronic prototyping
platform) berbasis open-source yang fleksibel dan mudah digunakan baik dari sisi
perangkat keras/hardware maupun perangkat lunak/software. Di luar itu, kekuatan
utama arduino adalah jumlah pemakai yang sangat banyak sehingga tersedia
pustaka kode program (code library) maupun modul pendukung (hardware
support modules) dalam jumlah yang sangat banyak. Hal ini memudahkan para
pemula untuk mengenal dunia mikrokontroler.
2.4 Arduino UNO
Arduino Uno adalah board mikrokontroler berbasis ATmega328. Uno
memiliki 14 pin digital input / output (dimana 6 dapat digunakan sebagai output
PWM), 6 input analog, resonator keramik 16 MHz, koneksi USB, jack listrik,
header ICSP, dan tombol reset. Uno dibangun berdasarkan apa yang diperlukan
untuk mendukung mikrokontroler, sumber daya bisa menggunakan power USB
(jika terhubung ke komputer dengan kabel USB) dan juga dengan adaptor atau
10
baterai. Arduino Uno seperti terlihat pada Gambar 2.4 berbeda dari semua papan
sebelumnya dalam hal tidak menggunakan FTDI chip driver USB-to-serial.
Sebaliknya, fitur Atmega16U2 (Atmega8U2 sampai versi R2) diprogram sebagai
konverter USB-to-serial. Revisi 2 dari Uno memiliki resistor pulling 8U2 HWB
yang terhubung ke tanah, sehingga lebih mudah untuk menggunakan mode DFU.
Dan Tabel 2.2 merupakan penjelasan dari spesifikasi arduino UNO.
Gambar 2.4 Arduino UNO
Tabel 2.2 Spesifikasi Arduino
Mikrokontroller ATmega328p Operasi tegangan 5v Rekomendasi input tegangan 7-12v Batas input tegangan 6-20v Digital I/O pin 6 Analog input pin 6 DC current per I/O pin 20mA DC current untuk 3.3V pin 50mA Flash memori 32 KB (ATmega328P)
Dimana 0.5 KB digunakan untuk bootloader
Clock speed 16 MHz LED_BUILTIN 13
11
Power
Arduino UNO ini dapat disupply melalui koneksi USB atau catu daya
eksternal yang pilihan power secara otomatis berfungsi tanpa saklar. Catu daya
eksternal (non-USB) dapat berasal baik dari adaptor AC-DC atau baterai. Adaptor
ini dapat dihubungkan dengan menancapkan 2.1mm jack DC ke colokan listrik
board. Baterai dapat dimasukkan dalam Gnd dan Vin pin header dari konektor
daya seperti terlihat pada Gambar 2.5.
Board dapat beroperasi pada pasokan eksternal 6 sampai 20 volt. Jika
tegangan dengan kurang dari 7V, tegangan pada board kemungkinan akan tidak
stabil. Jika menggunakan lebih dari 12V, regulator tegangan bisa panas (overheat)
dan merusak board. Kisaran yang disarankan adalah 7 sampai 12 volt.
Gambar 2.5 Power Arduino UNO
Power PIN:
VIN: pin tegangan Inputan ke board arduino saat menggunakan sumber catu
daya eksternal (adaptor USB 5 Volt atau adaptor yang lainnya 7-12 volt), kita
bisa menghubungkannya dengan pin VIN ini atau langsung ke jack power
5V. DC power jack (7-12V), Kabel konektor USB (5V) atau catu daya
lainnya (7-12V).
12
3V3: pin tegangan 3.3 volt catu daya umum langsung ke board. Maksimal
arus yang diperbolehkan adalah 50 mA.
5V: pin ini merupakan output 5V yang telah diatur oleh regulator papan
Arduino. Board dapat diaktifkan dengan daya, baik dari colokan listrik DC
(7-12V), konektor USB (5V), atau pin VIN board (7-12V). Jika kita
memasukan tegangan melalui pin 5V atau 3.3V secara langsung (tanpa
melewati regulator) dapat merusak papan Arduino.
GND: pin Ground.
IOREF: pin ini penyedia referensi tegangan agar mikro kontrol beroperasi
dengan baik. Memilih sumber daya yang tepat atau mengaktifkan penerjemah
tegangan pada output untuk bekerja dengan 5V atau
3.3V(sumber: www.arduino.cc).
Memori
ATmega328 memiliki 32 KB (dengan 0,5 KB digunakan untuk
bootloader). ATmega328 juga memiliki 2 KB dari SRAM dan 1 KB EEPROM
(yang dapat dibaca dan ditulis dengan perpustakaan/library EEPROM).
(sumber:www.arduino.cc).
Input dan Output
Masing-masing dari 14 pin digital Uno dapat digunakan sebagai input atau
output, menggunakan fungsi pinMode(), digitalWrite(), dan digitalRead(). Mereka
beroperasi pada tegangan 5 volt. Setiap pin dapat memberikan atau menerima
maksimum 40 mA dan memiliki resistor pull-up internal (terputus secara default)
dari 20-50 kOhms. Selain itu, beberapa pin memiliki fungsi spesial:
13
Serial: pin 0 (RX) dan 1 (TX) Digunakan untuk menerima (RX) dan
mengirimkan (TX) data serial TTL. Pin ini terhubung dengan pin ATmega8U2
USB-to-Serial TTL.
Eksternal Interupsi: Pin 2 dan 3 dapat dikonfigurasi untuk memicu interrupt
pada nilai yang rendah (low value), rising atau falling edge, atau perubahan
nilai. Lihat fungsi attachInterrupt() untuk rinciannya.
PWM: Pin 3, 5, 6, 9, 10, dan 11 Menyediakan 8-bit PWM dengan fungsi
analogWrite().
SPI: pin 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) mendukung komunikasi
SPI dengan menggunakan perpustakaan SPI.
LED: pin 13. Built-in LED terhubung ke pin digital 13. LED akan menyala
ketika diberi nilai HIGH.
Arduino Uno memiliki 6 input analog, berlabel A0 sampai A5, yang
masing-masing menyediakan resolusi 10 bit (yaitu 1024 nilai yang berbeda).
Secara default mereka mengukur dari ground sampai 5 volt, perubahan tegangan
maksimal menggunakan pin AREF dan fungsi analogReference(). Selain itu,
beberapa pin tersebut memiliki spesialisasi fungsi, yaitu TWI: pin A4 atau SDA
dan A5 atau SCL mendukung komunikasi TWI menggunakan perpustakaan Wire.
Ada beberapa pin lainnya yang tertulis di board:
AREF: tegangan referensi untuk input analog. Dapat digunakan dengan
fungsi analogReference().
Reset: gunakan LOW untuk me-reset mikrokontroler. Biasanya digunakan
untuk menambahkan tombol reset.
14
2.5 Arduino IDE
Software arduino yang digunakan adalah driver dan IDE, walaupun masih
ada beberapa software lain yang sangat berguna selama pengembangan arduino.
IDE atau Integrated Development Environment merupakan suatu program khusus
untuk suatu komputer agar dapat membuat suatu rancangan atau sketsa program
untuk papan arduino. IDE arduino merupakan software yang sangat canggih
ditulis dengan menggunakan java. IDE arduino terdiri dari juga dapat dilihat pada
Gambar 2.6.
Keterangan:
1. Editor Program
Sebuah window yang memungkinkan pengguna menulis dan mengedit
program dalam bahasa processing.
2. Verify
Mengecek kode sketch yang error sebelum memasukkan ke board arduino.
3. Uploader
Sebuah modul yang memuat kode biner dari komputer ke dalam memori di
dalam papan arduino.
4. New
Membuat sebuah sketch baru.
5. Open
Membuka daftar sketch pada sketch book arduino.
6. Save
Menyimpan kode sketch pada sketch book.
15
7. Serial Monitor
Menampilkan data serial yang dikirimkan dari board arduino.
Gambar 2.6 Toolbar Arduino IDE
2.6 Motor DC
Motor DC (Direct Current) bias dilihat pada Gambar 2.7 adalah peralatan
elektromagnetik dasar yang berfungsi untuk mengubah tenaga listrik menjadi
tenaga mekanik yang desain awalnya diperkenalkan oleh Michael Faraday lebih
dari seabad yang lalu (E. Pitowarno, 2006). Motor DC dikendalikan dengan
menentukan arah dan kecepatan putarnya. Arah putaran motor DC adalah searah
dengan arah putaran jarum jam (Clock Wise/CW) atau berlawanan arah dengan
arah putaran jarum jam (Counter Clock Wise/CCW), yang bergantung dari
hubungan kutub yang diberikan pada motor DC. Kecepatan putar motor DC diatur
dengan besarnya arus yang diberikan.
16
Gambar 2.7 Motor DC
Gambar 2.8 Bagian–Bagian Motor DC
Fungsi dari bagian–bagian penting dari motor DC yang dapat dilihat pada Gambar
2.8 adalah sebagai berikut:
1. Badan Magnet
Badan mesin ini berfungsi sebagai tempat mengalirnya fluks magnet yang
dihasilkan kutub magnet, sehingga harus terbuat dari bahan ferromagnetik.
Fungsi lainnnya adalah untuk meletakkan alat-alat tertentu dan mengelilingi
bagian-bagian dari mesin, sehingga harus terbuat dari bahan yang benar-benar
kuat, seperti dari besi tuang dan plat campuran baja.
17
2. Inti Kutub Magnet dan Penguat Belitan Magnet
Inti kutub magnet dan belitan penguat magnet ini berfungsi untuk
mengalirkan arus listrik agar dapat terjadi proses elektromagnetik. Adapun
aliran fluks magnet dari kutub utara melalui celah udara yang melewati badan
mesin.
3. Sikat-sikat
Sikat-sikat ini berfungsi sebagai jembatan bagi aliran arus jangkar dengan
bebas dan juga memegang peranan penting untuk terjadinya proses komutasi.
4. Komutator
Komutator ini berfungsi sebagai penyearah mekanik yang akan dipakai
bersama-sama dengan sikat. Sikat-sikat ditempatkan sedemikian rupa
sehingga komutasi terjadi pada saat sisi kumparan berbeda.
5. Jangkar
Jangkar dibuat dari bahan ferromagnetic dengan maksud agar kumparan
jangkar terletak dalam daerah yang induksi magnetiknya besar, agar ggl
induksi yang dihasilkan dapat bertambah besar.
6. Belitan Jangkar
Belitan jangkar merupakan bagian yang terpenting pada mesin arus
searah, berfungsi untuk tempat timbulnya tenaga putar motor.
Prinsip kerja dari motor DC adalah jika arus lewat pada suatu konduktor,
timbul medan magnet di sekitar konduktor. Medan magnet hanya terjadi di sekitar
sebuah konduktor jika ada arus mengalir pada konduktor tersebut. Arah medan
18
magnet ditentukan oleh arah aliran arus pada konduktor. Seperti yang dapat dilihat
pada Gambar 2.9.
Gambar 2.9 Prinsip Kerja Motor DC
Motor DC memiliki tiga komponen utama:
1. Kutub Medan.
Secara sederhana digambarkan bahwa interaksi dua kutub magnet akan
menyebabkan perputaran pada motor DC. Motor DC memiliki kutub medan
yang stasioner dan dinamo yang menggerakan bearing pada ruang diantara
kutub medan. Motor DC sederhana memiliki dua kutub medan: kutub utara dan
kutub selatan. Garis magnetik energi membesar melintasi bukan diantara
kutub-kutub dari utara ke selatan. Untuk motor yang lebih besar atau lebih
komplek terdapat satu atau lebih elektromagnet. Elektromagnet tersebut
menerima listrik dari sumber daya luar sebagai penyedia struktur medan.
2. Dinamo.
Bila arus masuk menuju dinamo, maka arus ini akan menjadi elektromagnet.
Dinamo yang berbentuk silinder, dihubungkan ke penggerak untuk
menggerakan beban. Untuk kasus motor DC yang kecil, dinamo berputar
19
dalam medan magnet yang dibentuk oleh kutub-kutub, sampai kutub utara dan
selatan magnet berganti lokasi. Jika hal ini terjadi, arusnya berbalik untuk
merubah kutub-kutub utara dan selatan dinamo.
3. Commutator.
Komponen ini terutama ditemukan dalam motor DC. Kegunaannya adalah
untuk membalikan arah arus listrik dalam dinamo. Commutator juga membantu
dalam transmisi arus antara dinamo dan sumber daya.
2.7 Motor Driver
L298N adalah contoh IC yang dapat digunakan sebagai driver motor DC.
IC ini menggunakan prinsip kerja H-Bridge. Tiap H-Bridge dikontrol
menggunakan level tegangan TTL yang berasal dari output mikrokontroler.
L298N dapat mengontrol 2 buah motor DC. Tegangan yang dapat digunakan
untuk mengendalikan robot bisa mencapai tegangan 46 Vdc dan arus mencapai
2A untuk setiap kanalnya. Bentuk komponen L298N seperti pada Gambar 2.10
sedangkan fiturnya sendiri dijelaskan di Tabel 2.3.
H-Bridge IC L298 sebagai penguat motor DC yang berfungsi sebagai i,
sebab sangat tidak mungkin mengendalikan motor DC langsung dari
mikrokontroler yang memiliki arus dan tegangan terbatas. Untuk itu digunakan H-
Bridge sebagai driver motor DC (H.Andrianto, 2008).
20
Gambar 2.10 Motor Driver L298N
Tabel 2.3 Fitur L298N
MW.15 PowerSO Nama Fungsi
1;15
2;19
Sense A; Sense B
Antara pin ini dan ground terhubung
dengan resistor sense untuk mengontrol arus
beban
2;3
4;5
Out 1; Out 2
Keluaran dari output A;arus yang mengalir
melalui beban. Koneksi antara dua pin diawasi
oleh pin 1.
4 6 VS Pasokan tegangan untuk tahapan output power.
5;7 7;9 Input 1; Input 2 T
Input yang cocok yaitu Bridge A.
6;11
8;14
Enable A; EnableB
TTL yang cocok dengan Enable Input: state L menonaktifkan
bridge A (enable A) atau bridge B (enable
8 1,10,11,20 GND Ground
21
MW.15 PowerSO Nama Fungsi
9
12
VSS
Pasokan tegangan untuk blok logika kapasitor
A100nF harus dihubungkan antara pin
ini dan ground
10; 12 13;15 Input 3; Input 4
TTL yang cocok Input ini yaitu Bridge B.
13; 14
16;17
Out 3; Out 4Keluaran dari bridge B.
Arus yang mengalir melalui beban. Koneksi
dua pin ini diawasi pin15
2.8 LCD 16 x 2 (Liquid Crystal Display)
LCD 16x2 merupakan suatu jenis media tampilan yang menggunakan
kristal cair sebagai penampil utamanya. LCD 16x2 yang memiliki fungsi sebagai
penampil suatu karakter tertentu, terjadi akibat terdapat banyak sekali titik cahaya
atau piksel yang terdiri dari satu buah Kristal cair sebagai sebuah titik cahaya.
Meskipun memiliki piksel atau titik cahaya, sebenarnya Kristal cair ini tidak
memancarkan cahayanya sendiri. Sumber cahaya yang didapatkan berasal dari
lampu neon yang berwarna putih di belakang susunan Kristal cair. Piksel yang
jumlahnya puluhan ribu inilah yang membentuk tampilan citra. Kutub Kristal cair
yang dilewati arus listrik akan berubah karena pengaruh polarisasi medan
magnetik yang timbul dan oleh karenanya akan hanya membiarkan beberapa
warna diteruskan sedangkan warna lain akan tersaring.
22
Tabel 2.4 Konfigurasi Pin LCD
No Simbol Level Fungsi
1 Vss - 0 Volt
2 Vcc - 5 + 10% Volt
3 Vee - Penggerak LCD
4
Rs
H/L
H=memasukkan data
L=memasukkan Ins
5
R/W
H/L
H=baca
L=tulis
6 E Enable Signal
7 DB0 H/L
Data Bus
8 DB1 H/L
9 DB2 H/L
10 DB3 H/L
11 DB4 H/L
12 DB5 H/L
13 DB6 H/L
14 DB7 H/L
15 V+BL Kecerahan LCD
16 V-BL
23
Sedangkan konfigurasi pin jika ditunjukkan pada gambar bias dilihat pada
Gambar 2.11.
Gambar 2.11 Konfigurasi Pin LCD
Fitur yang dimiliki LCD 16 x2 sebagai berikut:
1. 5 x 8 dots with cursor.
2. Built-in controller (KS 0066 or Equivalent).
3. + 5V power supply (Also available for + 3V).
4. 1/16 duty cycle.
5. B/L to be driven by pin 1, pin 2 or pin 15, pin 16 or A.K (LED).
6. N.V. optional for + 3V power supply.
7. Terdapat 192 macam karakter.
8. Memiliki kemampuan penulisan dengan 8bit maupun 4 bit.
9. Bekerja pada suhu 0 ̊ sampai 55̊ C.
10. Otomatis reset saat tegangan dihidupkan.
BAB III
METODE PENELITIAN
3.1 Metode Penelitian
Didalam metode penelitian ini dimana sensor kompas digunakan untuk
sistem navigasi, dimana data dari sensor kompas diolah oleh PID dan terhubung
dengan motor. Sensor kompas digunakan untuk membaca medan magnet bumi
dan menentukan arah medan magnet bumi (utara, timur laut, timur, tenggara,
selatan, barat daya, barat, barat laut). Dengan melihat seberapa besar medan
magnet di arah depan sensor, sehingga dapat menentukan arah hadap (heading).
Heading ini digunakan untuk kearah mata angin mana mobile robot bergerak
dengan satuan derajat 0º - 360º. Sebelum perangkat mampu melakukan sistem
navigasi maka pada metode penelitian ini akan dilakukan percobaan untuk
menentukan arah mata angin. Seperti terlihat pada gambar 3.1.
Gambar 3.1 Pengujian Arah
24
25
Gambar 3.1 Merupakan pengujian kompas digital menggunakan sensor
magnetometer CMPS03. Dari gambar 3.1. Dapat diketahui nilai sudut arah mata
angin akan bertambah dengan arah searah jarum jam. Dengan hasil sudut 0⁰/360⁰
adalah arah utara, 45⁰ adalah timur laut, 90⁰ adalah arah timur, 135⁰ adalah
tenggara,180⁰ adalah arah selatan, 225⁰ adalah barat daya, 270⁰ adalah arah
barat,315⁰adalah barat laut. Yang di tunjukkan pada Tabel 3.1.
Tabel 3.1 Derajat Arah Mata Angin
Arah Mata Angin Derajat
UTARA 0º / 360º
TIMUR LAUT 45º
TIMUR 90º
TENGGARA 135º
SELATAN 180º
BARAT DAYA 225º
BARAT 270º
BARAT LAUT 315º
26
Blok diagram pada penelitian ini, ditunjukkan pada Gambar 3.2:
Gambar 3.2 Diagram Rangkaian Alat
Desain rangkaian alat untuk penggunaan mobile robot dengan sistem
navigasi yang berupa arah terdiri dari CMPS03, arduino UNO, LCD, motor
driver, dan dua buah motor DC. Dimana kedua motor DC yang terkontrol oleh
motor driver sedangkan motor driver terhubung dengan mikrokontroler yang telah
terkoneksi dengan sensor kompas yang keluaran datanya ditampilkan oleh LCD
seperti terlihat pada gambar 3.2.
27
3.2 Metode PID (Proporsional-Integral-Derivativ)
Metode kontrol PID Pengendali PID (Proporsional-Integral-Derivativ),
merupakan gabungan dari tiga sistem kendali yang bertujuan untuk mendapatkan
keluaran dengan risetime yang tinggi dan galat yang kecil. Seperti yang kita
ketahui bahwa sistem kendali Proporsional memiliki keunggulan yaitu risetime
yang cepat tetapi sangat rentan dengan overshot/undershot, sistem kendali
integral memiliki keunggulan untuk meredam galat, sedangkan sistem kendali
Derivatif memiliki keunggulan untuk memperkecil delta error atau meredam
overshot/undershotsinyal keluaran pengendali PID dapat dirumuskan sebagai
berikut: .
(1)
0
Dalam bentuk diskrit dapat dituliskan :
PID = (kp*error) + ((ki)*(error+last_error)) + ((kd)*(error-last_error)) (2)
Dimana:
kp = berpengaruh pada respon sistem.
ki = berpengaruh pada nilai kesalahan sebelumnya.
kd = berpengaruh pada nilai kesalahan yang akan datang.
error = error dari rentang setpoint dengan nilai sensor.
last_error = error terakhir dari pembacaan
28
Gambar 3.3. Diagram Kontrol PID
Pada Gambar 3.3 merupakan algoritma dari metode PID dimana dari
setpoint yang merupakan arah dari tujuan nantinya akan di bandingkan dengan
sensor kompas, sehingga akan menghasilkan keluaran error. Error ini kemudian
yang akan diperoses kedalam kontrol PID, sehingga akan mempengaruhi
kecepatan pwm dari kedua motor. Akibat dari perubahan pwm kedua motor akan
mengakibatkan perubahan arah, arah inilah yang nantinya akan menjadi feed back.
Metode PID ini digunakan sebagai pegontrol kecepatan putar pada roda dari
mobile robot yang menggunakan sensor kompas ini dapat bergerak sesuai dengan
yang di inginkan selain itu untuk controller pada robot menggunakan
microcontroller arduino UNO untuk menjalankan sebuah motor DC digunakanlah
sebuah motor driver yaitu L298N dual H-Bridge.
29
3.3 Perancangan Perangkat Keras
3.3.1 Desain Mekanik
Gambar 3.4. Mekanik Tampak Samping
Gambar 3.5 Mekanik Tampak Atas
Pada Gambar 3.4 menunjukkan rancangan desain robot tampak dari samping,
sedangkan pada Gambar 3.5 menunjukkan rancangan desain robot tampak atas
dan pada Gambar 3.6 desain tampak dari depan dimana penempatan sensor
kompas harus berada di atas arduino dan dijauhkan dari motor yang memiliki
medan magnet karena dapat mengganggu arah kompas.
30
Gambar 3.6 Mekanik Tampak Depan
Dalam pengerjaan desain mekanik penulis menggunakan rancangan
mekanik yang sederhana agar alat ini bisa digunakan seefisien mungkin. Selain
itu dengan penempatan komponen yang sederhana alat ini tidak akan memakan
tempat yang banyak.
3.3.2 Lintasan Robot
Pada perancangan ini dilakukan untuk tempat jalannya robot dengan
ukuran:
- Luas lintasan 170 cm x 170 cm
- Diameter tengah 20 cm
- Tebal garis 2 cm
untuk lebih jelasnya dapat dilihat pada Gambar 3.7.
31
Gambar 3.7 Lintasan Robot
3.3.3 Komunikasi Kompas dengan Arduino
Pada perancangan ini membahas komunikasi kompas dengan arduino yang
menggunakan komunikasi I2C. Kompas yang digunakan yaitu CMPS03.
Penggunaan CMPS03 ini agar mendapatkan derajat arah mata angin yang lebih
maksimal.
Gambar 3.8. Port CMPS03
170 cm
20 cm
32
Dari Gambar 3.8 Pin 2 dan pin 3 digunakan untuk berkomunikasi dengan
protokol I2C untuk mengambil nilai kompas. Karena pin 2 dan pin 3 tidak
memiliki pull-up pada board CMPS03 maka harus ditambahkan pada jalur
komunikasi.
3.4 Sistem Navigasi
Sebelum melakukan navigasi terlebih dahulu sensor kompas harus
dikalibrasi. Setelah itu akan diminta tujuan arah dimana nanti tujuan tadi akan
dibandingkan dengan nilai dari sensor kompas, jika nilai sensor kompas masih
belum sama dengan tujuan maka akan baca sensor kompas lalu diolah oleh PID
yang menghasilkan kecepatan putaran motor. Nilai sensor dicek kembali sampai
memenuhi dari arah yang dituju, jika sudah terpenuhi maka selanjutnya sensor
photodiode akan mengecek warna putih jika kondisi terpenuhi maka motor akan
maju dan baca sensor photodiode lalu mengecek lagi sudah memenuhi atau
belum, jika kondisi tidak terpenuhi maka navigasi selesai. Sistem navigasi ini
seperti yang ditunjukkan pada Gambar 3.9.
33
Motor Maju
START
INISIALISASI KALIBRASI
T Dioda
==Putih
Y Kompas==
tujuan
T
STOP Y
Baca kompas
Baca Dioda
PWM Motor A
PWM Motor B
PID
Gambar 3.9 Flowchart Sistem Navigasi
BAB IV
HASIL DAN PEMBAHASAN
Pengujian sistem yang telah dilakukan penulis ini merupakan pengujian
terhadap perangkat keras serta perangkat lunak dari sistem secara keseluruhan
yang telah selesai dibuat untuk mengetahui kerja dari sistem tersebut berjalan
dengan baik atau tidak.
4.1 Pengujian Ketelitian Sensor Kompas CMPS03 dengan Kompas
4.1.1 Tujuan Pengujian Ketelitian Sensor Kompas
Pengujian dari proses ini untuk mengetahui sensor kompas bekerja dengan
baik dengan error yang kecil.
4.1.2 Alat yang Digunakan dalam Pengujian Ketelitian Sensor Kompas
Peralatan yang dibutuhkan untuk pengujian ini adalah sebagai berikut:
1. Arduino UNO
2. Kabel USB
3. Kompas
4. LCD
5. Sensor CMPS 03
34
35
4.1.3 Prosedur Pengujian Keteletian Sensor Kompas
Langkah – langkah yang dilakukan untuk melakukan pengujian sistem adalah
seperti berikut:
1. Komunikasi kompas ke arduino dengan menggunakan komunikasi I2C.
2. Menyambungkan pin LCD dengan arduino.
3. Menghidupkan laptop atau komputer untuk mengakses arduino IDE.
4. Menghubungkan arduino dengan laptop atau komputer mnggunakan kabel
USB.
5. Memasukkan program ke arduino IDE.
6. Kompas yang digunakan untuk membandingkan dengan kompas CMPS03
yaitu kompas pada smartphone.
7. Menentukan sudut yang akan di bandingkan dengan kompas.
8. Menjalankan program dan kalibrasi dulu sensor kompas lalu amati perbedaan
antara nilai sensor dengan nilai kompas pada smartphone.
4.1.4 Hasil dari Pengujian Ketelitian Sensor
Dari prosedur pengujian diatas, didapatkan perbedaan error dari
perbandingan antara nilai derajat sensor kompas CMPS03 dengan kompas. Yang
dapat dilihat pada Tabel 4.1.
Tabel 4.1 Pengujian Sensor Kompas dengan Kompas Smartphone
Kompas Sensor CMPS03 Error
0 ̊ 359 ̊ 0.3 % 45 ̊ 45 ̊ 0 % 90 ̊ 90 ̊ 0 %
36
Kompas Sensor CMPS03 Error
135 ̊ 135 ̊ 0 % 180 ̊ 181 ̊ 0.3 % 225 ̊ 225 ̊ 0 % 270 ̊ 270 ̊ 0 % 315 ̊ 315 ̊ 0 %
Dari Tabel 4.1 dapat disimpukan bahwa perbedaan ketelitian antara sensor
kompas CMPS03 dengan kompas mempunyai perbedaan rata-rata 0 ̊ - 1 ̊. Dengan
persentase error untuk tiap derajatnya dapat dicari dengan rumus:
100%
Error = persentase error tiap nilai derajat.
e = rentang error pembacaan kompas CMPS03 dengan kompas.
total = total nilai derajat dari kompas
4.2 Pengujian Respon Sistem
4.2.1 Tujuan Pengujian Respon Sistem
Pengujian dari proses ini untuk mengetahui respon sistem terhadap
setpoint yang dituju.
4.2.2 Alat yang Digunakan dalam Pengujian Respon Sistem
Peralatan yang dibutuhkan untuk pengujuan ini adalah sebagai berikut:
1. Arduino UNO
2. CMPS03
3. Sensor photodiode
37
4. LCD
5. Roda
6. Roda bebas
7. Motor DC
8. Motor driver
9. Baterai 7 v
10. Laptop atau Komputer
4.2.3 Prosedur Pengujian Respon Sistem
Langkah – langkah yang dilakukan untuk melakukan pengujian sistem
adalah seperti berikut :
1. Komunikasi kompas ke arduino dengan menggunakan komunikasi I2C.
2. Menyambungkan pin LCD dengan arduino..
3. Menyambungkan sensor photodiode ke arduino.
4. Menyambungkan motor DC ke motor driver yang terkoneksi dengan arduino.
5. Menggabungkan semua komponen menjadi satu sehingga menjadi mobile
robot.
6. Menghidupkan laptop atau komputer untuk mengakses arduino IDE.
7. Menghubungkan arduino dengan laptop atau computer mnggunakan kabel
USB.
8. Memasukkan program dari arduino IDE.
9. Menentukan sudut atau set point yang akan di uji.
38
10. Menjalankan program dan kalibrasi dulu sensor kompas lalu amati respon
sistem.
11. Respon sistem dapat dilihat dari waktu yang dibutuhkan robot untuk
mencapai setpoint.
12. Error yang ditentukan yaitu 90̊ , error merupakan rentang setpoint dengan
awal jalan robot.
4.2.4 Hasil Pengujian dari Pengujian Sistem
Dari prosedur pengujian di atas, dimana respon yang dibutuhkan untuk
mencapai setpoint yang diinginkan dapat dilihat pada Tabel 4.2.
Tabel 4.2 Pengujian Respon Terhadap Setpoint 0
Percobaan Waktu(s) 1 3.13 2 3.04 3 3.32 4 4.63 5 4.13 6 4.32 7 4.35 8 4.55 9 3.64
10 3.64
Dari Tabel 4.2 dapat dilihat dalam setiap percobaan dengan setpoint 0 ̊ pada
percobaan 1 didapatkan waktu sebesar 3,13s dan pada percobaan terakhir
didapatkan waktu sebesar 3,64s. Sedangkan hasil grafik dari setpoint 0
ditunjukkan pada Gambar 4.1.
39
Gambar 4.1 Grafik Respon dengan Setpoint 0
Berdasarkan hasil Gambar 4.1 dapat dilihat bahwa percobaan dilakukan
sebanyak 10 kali. Waktu tertinggi dalam percobaan ini sebesar 4,55s pada
percobaan ke 4. Berikutnya dilakukan pengujian respon terhadap Setpoint 45 ̊,
yang ditunjukkan pada Tabel 4.3.
Tabel 4.3 Pengujian Respon Terhadap Setpoint 45 ̊
Percobaan Waktu(s) 1 3.60 2 3.00 3 3.31 4 3.36 5 3.82 6 3.68 7 3.21 8 3.44 9 3.61
10 3.84
waktu(s)
Setpoint 0
5
4.5
4
3.5
3
2.5
2
1.5
1
0.5
0
0 1 2 3 4 5 6 7 8 9 10 11
percobaan(n)
40
Setpoint 45
4.5
4
3.5
3
2.5
2
1.5
1
0.5
0
0 1 2 3 4 5 6 7 8 9 10 11
percobaan(n)
Dari Tabel 4.3 dapat dilihat dalam setiap percobaan dengan setpoint 45 ̊ pada
percobaan 1 didapatkan waktu sebesar 3,60s dan pada percobaan terakhir
didapatkan waktu sebesar 3,84s. Sedangkan hasil grafik dari setpoint 45
ditunjukkan pada Gambar 4.2.
Gambar 4.2 Grafik Respon dengan Setpoint 45
Berdasarkan hasil Gambar 4.2 dapat dilihat bahwa percobaan dilakukan
sebanyak 10 kali. Waktu tertinggi dalam percobaan ini sebesar 3,84s pada
percobaan ke 10. Berikutnya dilakukan pengujian respon terhadap Setpoint 90 ̊,
yang ditunjukkan pada Tabel 4.4.
Tabel 4.4 Pengujian Respon Terhadap Setpoint 90 ̊
Percobaan Waktu(s) 1 3.43 2 3.44 3 3.28 4 3.12 5 3.35 6 3.66 7 3.89 8 3.56
waktu(s)
41
Setpoint 904.5
4
3.5
3
2.5
2
1.5
1
0.5
0
0 1 2 3 4 5 6 7 8 9 10 11
percobaan(n)
Percobaan Waktu(s) 9 3.27
10 3.77
Dari Tabel 4.4 dapat dilihat dalam setiap percobaan dengan setpoint 90 ̊ pada
percobaan 1 didapatkan waktu sebesar 3,43s dan pada percobaan terakhir
didapatkan waktu sebesar 3,77s. Sedangkan hasil grafik dari setpoint 90
ditunjukkan pada Gambar 4.3.
Gambar 4.3 Grafik Respon dengan Setpoint 90
Berdasarkan hasil Gambar 4.3 dapat dilihat bahwa percobaan dilakukan
sebanyak 10 kali. Waktu tertinggi dalam percobaan ini sebesar 3,89s pada
percobaan ke 7. Berikutnya dilakukan pengujian respon terhadap Setpoint 135 ̊,
yang ditunjukkan pada Tabel 4.5.
waktu(s)
42
Setpoint 135
4.5
4
3.5
3
2.5
2
1.5
1
0.5
0
0 1 2 3 4 5 6 7 8 9 10 11
percobaan(n)
Tabel 4.5 Pengujian Respon Terhadap Setpoint 135
Percobaan Waktu(s) 1 3.87 2 3.29 3 3.22 4 2.98 5 3.80 6 3.19 7 3.06 8 3.35 9 3.26
10 3.01
Dari Tabel 4.5 dapat dilihat dalam setiap percobaan dengan setpoint 135 ̊ pada
percobaan 1 didapatkan waktu sebesar 3,87s dan pada percobaan terakhir
didapatkan waktu sebesar 3,01s. Sedangkan hasil grafik dari setpoint 135
ditunjukkan pada Gambar 4.4.
Gambar 4.4 Grafik Respon dengan Setpoint 135 ̊
waktu(s)
43
Berdasarkan hasil Gambar 4.4 dapat dilihat bahwa percobaan dilakukan
sebanyak 10 kali. Waktu tertinggi dalam percobaan ini sebesar 3,87s pada
percobaan ke 1. Berikutnya dilakukan pengujian respon terhadap Setpoint 180 ̊,
yang ditunjukkan pada Tabel 4.6.
Tabel 4.6 Pengujian Respon Terhadap Setpoint 180
Percobaan waktu(s) 1 3.81 2 3.91 3 3.55 4 2.75 5 3.16 6 3.50 7 3.46 8 2.98 9 3.15
10 3.20
Dari Tabel 4.6 dapat dilihat dalam setiap percobaan dengan setpoint 180 ̊ pada
percobaan 1 didapatkan waktu sebesar 3,81s dan pada percobaan terakhir
didapatkan waktu sebesar 3,20s. Sedangkan hasil grafik dari setpoint 180̊
ditunjukkan pada Gambar 4.5.
44
Setpoint 1804.5
4
3.5
3
2.5
2
1.5
1
0.5
0
0 1 2 3 4 5 6 7 8 9 10 11
percobaan(n)
Gambar 4.5 Grafik Respon dengan Setpoint 180̊
Berdasarkan hasil Gambar 4.5 dapat dilihat bahwa percobaan dilakukan
sebanyak 10 kali. Waktu tertinggi dalam percobaan ini sebesar 3,91s pada
percobaan ke 2. Berikutnya dilakukan pengujian respon terhadap Setpoint 225 ̊,
yang ditunjukkan pada Tabel 4.7.
Tabel 4.7 Pengujian Respon Terhadap Setpoint 225 ̊
Percobaan Waktu(s) 1 3.80 2 4.48 3 4.96 4 3.52 5 3.34 6 3.13 7 4.10 8 3.76 9 3.87
10 4.15
waktu(s)
45
Setpoint 2255
4.5
4
3.5
3
2.5
2
1.5
1
0.5
0
0 1 2 3 4 5 6 7 8 9 10 11
percobaan(s)
Dari Tabel 4.7 dapat dilihat dalam setiap percobaan dengan setpoint 225 ̊ pada
percobaan 1 didapatkan waktu sebesar 3,80s dan pada percobaan terakhir
didapatkan waktu sebesar 4,15s. Sedangkan hasil grafik dari setpoint 225̊
ditunjukkan pada Gambar 4.6.
Gambar 4.6 Grafik Respon dengan Setpoint 225
Berdasarkan hasil Gambar 4.6 dapat dilihat bahwa percobaan dilakukan
sebanyak 10 kali. Waktu tertinggi dalam percobaan ini sebesar 4,96s pada
percobaan ke 3. Berikutnya dilakukan pengujian respon terhadap Setpoint 270 ̊,
yang ditunjukkan pada Tabel 4.8.
waktu(s)
46
Tabel 4.8 Pengujian Respon Terhadap Setpoint 270
Percobaan Waktu(s) 1 5.48 2 8.29 3 8.28 4 8.70 5 7.23 6 6.90 7 8.76 8 8.95 9 7.76
10 8.23
Dari Tabel 4.8 dapat dilihat dalam setiap percobaan dengan setpoint 270 ̊ pada
percobaan 1 didapatkan waktu sebesar 5,48s dan pada percobaan terakhir
didapatkan waktu sebesar 8,23s. Sedangkan hasil grafik dari setpoint 270
ditunjukkan pada Gambar 4.7.
Gambar 4.7 Grafik Respon dengan Setpoint 270 ̊
Setpoint 2709.5 9
8.5 8
7.5 7
6.5 6
5.5 5
4.5 4
3.5 3
2.5 2
1.5 1
0.5 0
0 1 2 3 4 5 6 7 8 9 10 11
percobaan(n)
wktu(s)
47
Berdasarkan hasil Gambar 4.2 dapat dilihat bahwa percobaan dilakukan
sebanyak 10 kali. Waktu tertinggi dalam percobaan ini sebesar 8,95s pada
percobaan ke 8. Berikutnya dilakukan pengujian respon terhadap Setpoint 315 ̊,
yang ditunjukkan pada Tabel 4.9.
Tabel 4.9 Pengujian Respon Terhadap Setpoint 315
Percobaan Waktu(s) 1 2.65 2 3.85 3 3.28 4 4.80 5 2.53 6 2.90 7 3.07 8 3.29 9 3.68
10 2.75
Dari Tabel 4.9 dapat dilihat dalam setiap percobaan dengan setpoint 315 ̊ pada
percobaan 1 didapatkan waktu sebesar 2,65s dan pada percobaan terakhir
didapatkan waktu sebesar 2,75s. Sedangkan hasil grafik dari setpoint 315
ditunjukkan pada Gambar 4.8.
48
Setpoint 3155.5 5
4.5
4
3.5
3
2.5
2
1.5
1
0.5
0
0 1 2 3 4 5 6 7 8 9 10 11
percobaan(n)
Gambar 4.8 Grafik Respon dengan Setpoint 315
Berdasarkan hasil Gambar 4.8 dapat dilihat bahwa percobaan dilakukan
sebanyak 10 kali. Waktu tertinggi dalam percobaan ini sebesar 4,80s pada
percobaan ke 4.
Pengujian sistem juga dilakukan untuk pegujian PID, pengujian ini
memakai setpoint 270 ̊ terhadap posisi awal 180 ̊ yang dilakukan dalam 3 kali
percobaan dengan nilai kp=0,7, ki=0,01, kd=0,0012. Tujuan dilakukan percobaan
ini untuk mengetahui rise time, overshoot, dan settling time. Rumus yang dipakai
yaitu:
Rumus overshoot:
100%
Overshoot = nilai maksimum respon yang melebihi setpoint
waktu(S)
49
Respon PID
290 280 270 260 250 240 230 220 210 200 190 180
0 1 2 3 4 5 6 7 8 9 10 11 12 13
waktu()
Respon PID
280 270 260 250 240 230 220 210 200 190 180
0 1 2 3 4 5 6 7 8 9 10 11 12 13
waktu(s)
Rumus rise time = waktu yang dibutuhkan sistem dari 10% sampai 90% menuju
setpoint.
Rumus settling Time= waktu yang dibutuhkan sistem telah masuk keadaan stabil.
Gambar 4.9 Grafik Respon PID Percobaan 1
Dari Gambar 4.9 didapatkan repon PID pada percobaan 1, rise time=5s,
overshoot=2,22%, settling time=11s.
Gambar 4.10 Grafik Respon PID Percobaan 2
derajat
derajat
50
Dari Gambar 4.10 didapatkan repon PID pada percobaan 2, rise time=4,5s,
overshoot=0,37%, settling time=9,5s.
Gambar 4.11 Grafik Respon PID Percobaan 3
Dari Gambar 4.11 didapatkan repon PID pada percobaan 1, rise time=4,5s,
overshoot=2,22%, settling time=9,7s.
4.3 Pengujian Sistem Keseluruhan
4.3.1 Tujuan Pengujian Pada Sistem Keseluruhan
Pengujian dari proses ini untuk mengetahui apakah mobile robot dapat
kembali ke posisi awal.
4.3.2 Alat yang Digunakan dalam Pengujian Sistem Keseluruhan
Peralatan yang dibutuhkan untuk pengujuan ini adalah sebagai berikut :
1. Arduino UNO
2. CMPS03
3. Sensor photodiode
Respon PID290 280 270 260 250 240 230 220 210 200 190 180
0 1 2 3 4 5 6 7 8 9 10 11 12 13
waktu(s)
derajat
51
4. LCD
5. Roda
6. Roda bebas
7. Motor DC
8. Motor driver
9. Baterai 7 v
10. Laptop atau Komputer
4.3.3 Prosedur Pengujian Pada Sistem Keseluruhan
Langkah – langkah yang dilakukan untuk melakukan pengujian sistem
adalah seperti berikut :
1. Komunikasi kompas ke arduino dengan menggunakan komunikasi I2C.
2. Menyambungkan pin LCD dengan arduino..
3. Menyambungkan sensor photodiode ke arduino.
4. Menyambungkan motor DC ke motor driver yang terkoneksi dengan arduino.
5. Menggabungkan s emua komponen menjadi satu sehingga menjadi mobile
robot.
6. Menghidupkan laptop atau komputer untuk mengakses arduino IDE.
7. Menghubungkan arduino dengan laptop atau computer mnggunakan kabel
USB.
8. Memasukkan program ke arduino IDE.
9. Menentukan sudut yang akan di uji.
10. Menjalalankan program dan kalibrasi sensor kompas.
52
4.3.4 Hasil Pengujian dari Sistem Keseluruhan
Dari prosedur pengujian diatas, keberhasilan dapat dikatakan jika mobile
robot dapat kembali ke posisi awal saat pertama kali dijalankan. Hasil dari
pengujian dapat dilihat pada Tabel 4.10.
Tabel 4.10 Pengujian Sistem Keseluruhan
Percobaan Tujuan Hasil 1 0 ̊ Berhasil 2 0 ̊ Gagal 3 0 ̊ Berhasil 4 0 ̊ Berhasil 5 0 ̊ Gagal 6 0 ̊ Gagal 7 0 ̊ Berhasil 8 0 ̊ Berhasil 9 0 ̊ Berhasil 1 45 ̊ Berhasil 2 45 ̊ Berhasil 3 45 ̊ Berhasil 4 45 ̊ Berhasil 5 45 ̊ Berhasil 6 45 ̊ Berhasil 7 45 ̊ Gagal 8 45 ̊ Berhasil 9 45 ̊ Berhasil 10 45 ̊ Berhasil 1 90 ̊ Berhasil 2 90 ̊ Berhasil 3 90 ̊ Berhasil 4 90 ̊ Berhasil 5 90 ̊ Berhasil 6 90 ̊ Gagal 7 90 ̊ Gagal 8 90 ̊ Berhasil 9 90 ̊ Berhasil 10 90 ̊ Berhasil 1 135 ̊ Gagal 2 135 ̊ Berhasil 3 135 ̊ Berhasil 4 135 ̊ Berhasil 5 135 ̊ Berhasil
53
Percobaan Tujuan Hasil 6 135 ̊ Berhasil 7 135 ̊ Berhasil 8 135 ̊ Berhasil 9 135 ̊ Berhasil 10 135 ̊ Berhasil 1 180 ̊ Berhasil 2 180 ̊ Gagal 3 180 ̊ Gagal 4 180 ̊ Berhasil 5 180 ̊ Berhasil 6 180 ̊ Berhasil 7 180 ̊ Berhasil 8 180 ̊ Berhasil 10 180 ̊ Berhasil 1 225 ̊ Berhasil 2 225 ̊ Berhasil 3 225 ̊ Gagal 4 225 ̊ Gagal 5 225 ̊ Berhasil 6 225 ̊ Gagal 7 225 ̊ Berhasil 8 225 ̊ Berhasil 9 225 ̊ Berhasil 10 225 ̊ Gagal 1 270 ̊ Gagal 2 270 ̊ Gagal 3 270 ̊ Gagal 4 270 ̊ Berhasil 5 270 ̊ Gagal 6 270 ̊ Berhasil 7 270 ̊ Berhasil 8 270 ̊ Berhasil 9 270 ̊ Berhasil 10 270 ̊ Gagal 1 315 ̊ Berhasil 2 315 ̊ Berhasil 3 315 ̊ Berhasil 4 315 ̊ Berhasil 5 315 ̊ Gagal 6 315 ̊ Gagal 7 315 ̊ Berhasil 8 315 ̊ Berhasil 9 315 ̊ Berhasil
54
Percobaan Tujuan Hasil 10 315 ̊ Berhasil
Dari Tabel 4.10 dilakukan pengujian untuk mengetahui persentase keberhasilan
terhadap setiap variasi setpoint. Untuk mengetahui dari persentase keberhasilan
didapatkan dari rumus:
100%
Keberhasilan = persentase keberhasilan setiap setpoint.
nBerhasil = jumlah yang berhasil pada setiap setpoint.
nPengujian = jumlah data yang diuji pada setiap set point.
Sehingga didapatkan hasil untuk setpoint 0 ̊ persentase keberhasilan 70%,
setpoint 45 ̊ persentase keberhasilan 90%, setpoint 90 ̊ persentase keberhasilan
80%, setpoint 135 ̊ persentase keberhasilan 90%, setpoint 180 ̊ persentase
keberhasilan 80%, setpoint 225 ̊ persentase keberhasilan 60%, setpoint 270
persentase keberhasilan 50 %, setpoint 315 ̊ persentase keberhasilan 80 %.
BAB V
PENUTUP
Berdasarkan Pengujian pada perangkat keras dan perangkat lunak yang
digunakan dalam tugas akhir ini, maka dapat diambil kesimpulan dan saran-saran
dari hasil yang diperoleh.
5.1. Kesimpulan
1. Sistem kendali PID dengan nilai kp=0,7, ki=0,01, kd=0,0012 pada mobile
robot yang mengendalikan arah gerakan secara otomatis menghasilkan
rise time paling kecil di percobaan ke 2 dan 3 yaitu 4,5s, overshoot paling
kecil pada percobaan 2 yaitu 0,37%, dan settling time paling kecil pada
percobaan ke 2 yaitu 9,5.
2. Mobile robot mampu kembali ke posisi awal robot bergerak dengan sensor
kompas dengan tingkat keberhasilan 70% pada setpoint 0 ̊, 90% pada
setpoint 45 ̊, 80% pada setpoint 90 ̊, 90% pada setpoint 135 ̊, 80% pada
setpoint 180 ̊, 60% pada setpoint 225 ̊, 50% pada setpoint 270 ̊,80% pada
setpoint 315 ̊.
5.2. Saran
Sebagai pengembangan dari penelitian yang telah dilakukan, penulis
memberikan saran sebagai berikut :
1. Menggunakan sensor kompas yang lebih baik dari CMPS03.
2. Menggunakan motor yang dapat menanggapi PID dengan baik.
55
56
3. Menggunakan baterai sesuai dengan suplai yang dibutuhkan motor.
4. Penambahan rotary yang digunakan menghitung putaran roda utuk mengukur
jarak.
5. Menggunakan metode odometri dengan inputan rotary dan dibandingkan
dengan data kompas.
DAFTAR PUSTAKA
Alldatasheet. (2016, 9 7). Retrieved from Alldatasheet.com: http://www.alldatasheet.com/datasheet-pdf/pdf/83166/ETC/CMPS03.html
Arduino.cc. (2016, 9 7). Arduino.cc. Retrieved from http://arduino.cc/en/main/ArduinoBoardUno
E, P. (2006). “Robotika: Desain, Kontrol, dan Kecerdasan Buatan”. Yogyakarta: Andi.
H, A. (2008). “Pemrograman Mikrokontroler AVR Atmega8535”. Bandung.
Pudja, R. (2005). “Line Tracker Avr C”. Jurnal Gunadarma, Vol.2.
Rudi Dikairono, d. (2013). “Sistem Navigasi dan Penghindar Rintangan pada Mobile Robot Menggunakan GPS dan Pengukur Jarak Ultrasonik”. JAVA Journal Of Electrical and Electronics Engineering, Vol.11 No.1.
Wahyuono, T. A. (2015). KENDALI ROBOT MANUAL 4WD MECANUM WHEEL BERBASIS PID DENGAN MENGGUNAKAN ARM – CORTEX M4. JCONES, 39-45.
57