Buku Modul Pemograman Line Follower
December 14, 2016 | Author: Luthfi Suherman | Category: N/A
Short Description
Download Buku Modul Pemograman Line Follower...
Description
Modul Pemrograman Robot Line Follower
Barelang Tracerino
Divisi Robotika Teknik Elektro Politeknik Negeri Batam
BAB I PENGENALAN ROBOT LINE FOLLOWER 1.1
Pendahuluan Robot line follower merupakan robot yang memiliki kemampuan untuk bernavigasi mengikuti garis yang memiliki memiliki perbedaan warna yang kontras dengan warna lapangan atau arena. Biasanya warna garis yang digunakan adalah putih jika warna lapangan adalah hitam. Selain itu biasanya digunakan warna hitam untuk warna garis jika warna lapangan atau arena adalah putih. Robot line follower merupakan jenis robot yang banyak dipertandingkan pada ajang atau kontes robot tingkat regional, nasional, maupun internasional. Robot line follower banyak dilombakan karena memiliki tingkat kesulitan rendah dalam merancang ataupun memprogramnya. Tingkat kesulitan yang rendah membuat robot tersebut menjadi favorit untuk dipelajari dan da dipertandingkan pada tingkat sekolah ekolah menengah atas ataupun tingkat perguruan tinggi. Pada kontes robot yang rutin diadakan pada tingkat regional, nasional, dan internasional,, robot line follower tidak hanya dituntut untuk dapat bernavigasi mengikuti garis.. Robot line follower juga dituntut untuk dapat menyelesaikan misimisi misi tertentu contohnya memindahkan barang (biasanya disebut dengan transporter robot). Ada juga robot line follower yang dituntut untuk menyelesaikan misi keluar dari jalur labirin (biasanya disebut dengan maze solving robot). Ada juga robot line follower dituntut untuk menyelesaikan misi menyelamatkan sesuatu (rescue). ( Tentunya
untuk
dapat
menjalankan
misi
tersebut
robot
perlu
ditambah
kemampuannya untuk bernavigasi menghindari rintangan atau halangan yang ada. Sebuah robot line follower memiliki 3 bagian utama yaitu aktuator, sensor, dan kontroler. Aktuator merupakan alat atau benda yang dapat membuat robot tersebut bergerak. Aktuator pada robot biasanya menggunakan motor. Pada robot line follower yang bertipe mobile (menggunakan roda) aktuator yang digunakan biasanya berupa motor DC. Sedangkan robot line follower yang bertipe legged (meggunakan lengan atau kaki)) biasanya motor yang digunakan adalah jenis motor servo. Sedangkan sensor merupakan "indera penglihatan" pada robot. Layaknya seorang manusia untuk dapat berjalan tanpa menabrak pastinya memerlukan mata untuk
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
1
melihat. Begitu juga robot line follower, untuk dapat bernavigasi mengikuti garis diperlukan sensor yang dapat melihat garis. Kontroler pada robot merupakan "otak" utama robot. Fungsi kontroler sama halnya dengan fungsi otak pada manusia yaitu digunakan untuk berfikir. berfikir Namun bedanya otak pada robot harus diisikan sebuah program. Program tersebut merupakan perintah-perintah perintah perintah yang dapat dimengerti oleh robot yang dituliskan dalam beberapa baris kode yang biasa disebut dengan sourcecode. Barelang Tracerino merupakan sebuah kit it robot yang didesain dengan fungsi dasar robot line follower. follower Selain sebagai robot line follower, robot ini juga dapat diupgrade menjadi robot lain seperti robot transporter, maze solving, solving dan robot rescue. Barelang Tracerino didesain dengan sistem pergerakan menggunakan roda (mobile ( robot). Robot Barelang Tracerino dapat diprogram menjadi autonoumous robot dan robot manual. Autonomous robot merupakan robot yang dapat bernavigasi secara otomatis tanpa perintah dari manusia. manusia Sedangkan robot manual merupakan robot yang dikendalikan secara manual oleh manusia. Barelang Tracerino didesain sebagai kit robot pembelajaran yang mudah dipahami bagi para pemula yang ingin belajar tentang robotika. Bahasa pemrograman yang digunakan untuk membuat program pada robot Barelang Tracerino adalah C++. Program dapat dituliskan pada Arduino IDE, perangkat lunak opensource yang dapat digunakan untuk memrogram m mikrokontroler berbasis Arduino. Selain perangkat keras, Barelang Tracerino juga dilengkapi dengan library yang dapat memudahkan dalam pembuatan program.
Gambar 1. Robot Barelang Tracerino Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
2
1.2
Bagian Robot Barelang Tracerino V1 1.2.1 Aktuator Aktuator merupakan perangkat penggerak robot yang memiliki fungsi dasar memindahkan posisi robot dari suatu tempat ke tempat lain. Pada robot Barelang Tracerino, aktuator yang digunakan adalah dua buah motor moto DC dengan kecepatan 620 RPM. Motor DC dihubungkan secara langsung ke sebuah roda, sehingga apabila terjadi perputaran motor roda juga berputar yang berakhibat pada bergeraknya body robot seperti halnya ya yang terjadi pada mobil yang umum.
Gambar 2. Motor DC dan roda
1.2.2 Sensor Sensor merupakan perangkat yang berfungsi untuk mendeteksi kondisi lingkungan tempat robot berada. Banyak jenis sensor yang biasanya bi digunakan di robot. Sensor-sensor Sensor sensor tersebut juga beragam fungsinya, ada yang digunakan untuk mendeteksi benda, mendeteksi warna, mendeteksi api, dan lain sebagainya. Pada robot Barelang Tracerino sensor yang digunakan adalah sensor garis. Sesuai dengan namanya, sensor garis merupakan sensor yang digunakan untuk mendeteksi sebuah sebu garis dengan engan lebar dan warna tertentu.
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
3
Gambar 3. Bentuk fisik sensor garis
Gambar 4. Penempatan sensor garis pada robot
1.2.3 Kontroler Kontroler merupakan perangkat yang penting pada robot. robot Kontroler pada robot Barelang Tracerino merupakan sebuah rangkaian elektronik berbasis mikrokontroler yang berfungsi untuk mengatur fungsi kerja kerja dari masing-masing masing bagian robot. Kontroler yang digunakan pada robot Barelang Tracerino memiliki spesifikasi sebagai berikut : 1.
Berbasis mikrokontroler ATMega32 dengan kecepatan eksekusi program 16MIPS (Mega Mega Instruction Per Second), Second
2.
terintegrasi erintegrasi secara langsung dengan port USB yang dapat digunakan sebagai jalur untuk mengisi program, program
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
4
3.
terintegrasi erintegrasi secara langsung dengan Driver motor yang digunakan untuk mengendalikan arah dan kecepatan putar motor DC, DC
4.
terintegrasi erintegrasi secara langsung dengan port joystick PS yang dapat digunakan sebagai pengendali robot pada mode manual, manual
5.
terintegrasi erintegrasi secara langsung dengan modul komparator yang dapat dihubungkan secara langsung ke sensor garis. garis Bagian perangkat masukan dan keluaran yang terintegrasi pada kontroler
Barelang Tracerino Tracer dapat dilihat pada Gambar 5.
Gambar 5. Kontroler robot Barelang Tracerino
1.2.4 Body Robot Body robot merupakan bagian yang berfungsi untuk menempatkan bagian-bagian bagian utama robot. Body robot dapat dibentuk dari sebuah profile yang memiliki sifat keras dan mudah dibentuk. Pada robot Barelang Tracerino, body robot dibentuk dari bahan akrilik yang dibentuk sedemikian rupa. Bahan akrilik dipilih karena memiliki sifat mudah dipotong, bermassa ringan, dan tidak bersifat konduktor sehingga tidak menyebabkan shot circuit pada rangkaian.
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
5
Gambar 6. Bentuk body robot
1.3
Arduino IDE Arduino IDE merupakan perangkat lunak yang digunakan untuk melakukan perograman pada robot Barelang Tracerino. Arduino IDE merupakan perangkat lunak yang bersifat opensource yang berarti semua orang boleh melakukan modifikasi terhadap kode programnya. Arduino IDE yang digunakan pada robot Barelang Tracerino merupakan Arduino IDE versi 1.0.5 yang telah dimodifikasi dengan penambahan beberapa fitur. Untuk memprogram robot Barelang Barel Tracerino, Arduino IDE yang digunakan harus yang yang berasal dari paket modul pembelajaran ini. Arduino IDE yang diunduh diund langsung dari website http://www.arduino.cc/ tidak dapat langsung digunakan karena belum ada tambahan tambahan modifikasi yang mendukung men robot Barelang Tracerino.
Gambar 7. Tampilan loading screen dari Arduino IDE Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
6
BAB II PEMROGRAMAN ROBOT I 2.1
Instalasi Driver Untuk memulai melakukan pemrograman pada robot Barelang Tracerino, terlebih dahulu driver river perangkat keras robot harus ter-install pada komputer. Untuk melakukan proses instalasi driver ini, terlebih dahulu mode robot harus dalam mode program.. Mode program ditandai dengan nyala led mode yang berkedip. Untuk dapat masuk ke mode program, ikuti ik langkah-langkah berikut ini : 1.
Hubungkan kabel USB ke robot,
2.
tekan ekan tombol reset dan tombol boot secara bersamaan, bersamaan
3.
lepaskan tombol reset, biarkan tombol boot dalam posisi tertekan dalam beberapa saat,
4.
lepaskan epaskan tombol boot, boot kemudian perhatikan nyala dari led mode,
5.
jika kondisi led mode adalah berkedip maka proses masuk ke mode program telah berhasil. Jika sudah berhasil masuk ke mode program, tahap selanjutnya adalah
melakukan instalasi driver d robot. Untuk melakukan proses instalasi driver robot ikuti langkah-langkah langkah berikut ini : 1.
Klik pada menu Windows, ketikkan "device manager" pada menu Search program and files, files kemudian emudian klik pada menu Device Manager,
Gambar 8. Membuka Device Manager Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
7
2.
windows Device Manager akan muncul, kemudian perhatikan pada bagian Other devices akan tertera USBasp dengan tanda seru berwarna kuning, kuning
Gambar 9. USBasp pada Device Manager
3.
klik lik kanan pada USBasp kemudian pilih menu Update Driver Software,
Gambar 10. Update driver USBasp
4.
selanjutnya akan kan muncul window Update Driver Software, pilih Browse my computer for Driver software,
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
8
Gambar 11. Pilihan meng-install driver dari komputer
5.
pilihlah ilihlah lokasi penyimpanan driver robot Barelang Tracerino, lanjutkan dengan menekan ekan tombol OK,
Gambar 12. Memilih lokasi penyimpanan driver
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
9
Gambar 13. Lokasi penyimpanan driver robot
6.
lanjutkan anjutkan proses instalasi dengan menekan tombol Next, Next
Gambar 14. Melanjutkan proses instalasi driver
7.
jika muncul window Windows Security pilih Instal this driver software anyway,
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
10
Gambar 15. Peringatan Windows Security
8.
proses roses instalasi driver akan berjalan, tunggu sampai proses instalasi driver selesai,
9.
ka proses instalasi driver berhasil, sil, maka akan muncul pesan Windows Win has jika successfully update your driver software,
Gambar 16. driver telah berhasil di-install
10.
Perhatikan pada window Device Manager, kini USBasp tidak terdapat lagi icon tanda seru, yang menandakan bahwa driver perangkat keras robot sudah terpasang secara sempurna.
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
11
Gambar 17. USBasp yang sudah berhasil di-install install
2.2
Membuat,, Mengkompilasi, dan Mentransfer Program Untuk membuat program pada robot Barelang Tracerino diperlukan sebuah IDE (Integrated Integrated Development Enviroment) Enviroment yang bernama Arduino IDE. IDE mrupakan sebuah perangkat lunak yang digunakan untuk menuliskan program, mengkompilasi program, dan mentransfer program ke robot. Tahap hap berikut ini akan dilakukan ujicoba untuk membuat, mengkompilasi, dan mentrasfer program sederhana untuk membuat led mode berkedip dengan denga tunda waktu 500 milliseconds. milliseconds Tahapan untuk melakukan pembuatan program, melakukan kompilasi, dan melakukan transfer program ke robot dapat dilihat di bawah ini. 1.
Buka aplikasi Arduino IDE dengan cara membuka folder Arduino - Barelang Tracerino kemudian menjalankan file arduino.exe,
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
12
Gambar 18. Folder Arduino - Barelang Tracerino pada desktop
Gambar 19. Fle arduino.exe
2.
setelah aplikasi Arduino IDE terbuka, pilihlah pilihlah menu Tools kemudian Board. Board Pilihlah Barelang elang Tracerino pada tipe board,
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
13
Gambar 20. Pilihan tipe board Barelang Tracerino
3.
kemudian emudian lanjutkan dengan memilih menu Programmer, pilihlah tipe programmer USBasp, USBasp
Gambar 21. Memilih tipe programmer USBasp Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
14
4.
tuliskan uliskan sintaks program berikut ini pada lokasi code editor, #include BarelangTracerino Robot; void setup() { Robot.Inisialisasi(); }
// Inisialisai robot
void loop() { Robot.LedModeBlink(500); // Led berkedip dengan selang waktu 500ms }
5.
ntuk memastikan sintaks yang ditulis adalah benar, lakukan kompilasi untuk program dengan menekan tombol compile,
Gambar 22. Melakukan kompilasi program
6.
jika ika sintaks yang dituliskan benar dan tidak terjadi kesalahan, maka akan muncul informasi seperti di bawah ini, ini
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
15
Gambar 23. Hasil kompilasi yang tidak terjadi kesalahan
7.
jika tedapat kesalahan pada sintaks program, maka akan muncul pesan error berwarna merah seperti berikut ini, ini
Gambar 24. Hasil kompilasi yang terjadi kesalahan Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
16
8.
jika ika sintaks yang dituliskan tidak ada kesalahan, dapat dilanjutkan dengan melakukan transfer program ke kontroler robot. Proses ini biasanya disebut dengan upload program. Untuk melakukan proses upload program pertama yang harus dilakukan adalah masuk ke mode mode program. Kemudian untuk mengmeng upload program pilih pilih menu File kemudian pilih Upload Using Programmer. Programmer
Gambar 25. Melakukan upload program ke kontroler robot
9.
jika proses upload program berhasil dilakukan, maka akan muncul pesan Done Uploading seperti gambar berikut ini,
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
17
Gambar 26. Proses upload program berhasil
10.
jika ika ternyata proses upload program gagal dilakukan, biasanya terdapat pesan error bewarna merah yang menyatakan "avrdude : error : " setelah pesan Done Uploading,
Gambar 27. Proses upload program yang gagal Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
18
2.3
Struktur Pemrograman Arduino IDE yang digunakan untuk memprogram robot Barelang Tracerino merupakan Arduino IDE dengan penambahan library dan tipe mikrokontroler mikrokon AVR yang lain. Arduino IDE menggunakan bahasa pemrograman C++ yang telah berorientasi objek.. Tambahan library dapat memudahkan dalam pembuatan program, terutama bagi pemula. Struktur dasar pemrograman Arduino IDE terdiri dari dua buah fungsi ungsi dasar yaitu fungsi setup dan fungsi loop. loop void setup() { pernyataan; } void loop() { pernyataan; }
Fungsi setup merupakan sebuah fungsi yang digunakan untuk inisialisasi kontroler robot. Fungsi ini akan dijalankan sekali dan akan dijalankan pertama kali ketika robot dinyalakan. Sedangkan fungsi ungsi loop merupakan sebuah fungsi yang digunakan untuk menuliskan menuliskan program utama robot. Sintaks program yang dituliskan pada fungsi loop akan dijalankan secara terus menerus selama robot dalam keadaan menyala.. Fungsi loop akan dijalankan setelah fungsi setup. Pada fungsi loop ini nantinya dituliskan program utama dari robot. r
2.4
Library BarelangTracerino Tracerino.h Arduino IDE yang digunakan untuk memprogram robot Barelang Tracerino sudah menyertakan library yang dapat digunakan untuk memudahkan dalam melakukan pemrograman. Library yang disertakan hanya bisa digunakan untuk modul kontroler ntroler robot Barelang Tracerino. Beberapa fungsi yang disediakan pada library Barelang Tracerino antara lain seperti berikut ini : 1.
void Inisialisasi();
Fungsi Inisialisasi digunakan untuk mendeklarasikan perangkat masukan dan keluaran yang terhubung pada modul kontroler robot Barelang Tracerino. Tracerino 2.
void LedModeBlink(unsigned LedModeBlink( int t);
Fungsi LedModeBlink digunakan untuk memerintahkan led mode m berkedip dengan selang waktu t milliseconds.
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
19
3.
void LedModeOn();
Fungsi LedModeOn digunakan untuk memerintahkan led mode m menyala (on). 4.
void LedModeOff();
Fungsi LedModeOff digunakan untuk memerintahkan led mode m mati (off). 5.
bool ModeManual();
Fungsi ModeManual merupakan fungsi yang dapat digunakan untuk mendeteksi kondisi tombol mode. Jika tombol mode dalam posisi manual maka return value fungsi ini akan true. Namun jika tombol mode dalam posisi automatic maka return value dari fungsi ini akan false. 6.
bool ModeAutomatic();
Fungsi ModeAutomatic merupakan fungsi yang dapat digunakan untuk mendeteksi kondisi tombol mode. Jika tombol mode dalam posisi automatic maka return value dari fungsi ini akan true. Namun jika tombol mode dalam posisi manual maka return value dari fungsi ini akan false. 7.
bool Start();
Fungsi Start merupakan fungsi yang dapat digunakan untuk mendeteksi penekanan tombol start. Jika tombol start ditekan maka return value dari fungsi ini akan true.. Jika tombol start tidak dalam posisi ditekan maka return value dari fungsi ini akan false. false 8.
void DriveRobot(int int kecepatanKiri, int kecepatanKanan);
Fungsi DriveRobot DriveR merupakan fungsi yang dapat digunakan untuk menggerakkan robot berdasarkan berdasarkan parameter kecepatan putar motor kiri (kecepatanKiri) dan kecepatan putar motor kanan (kecepatanKanan). (kecepatanKanan) Parameter kecepatanKiri dan kecepatanKanan dapat diisi dengan nilai desimal dari -255 sampai 255.. Dimana nilai yang positif akan mengakhibatkan mengakhibatkan motor berputar ke arah depan dengan kecepatan putar motor sebesar nilai absolut dari nilai parameter tersebut. Sedangkan nilai negatif akan mengakhibatkan motor berputar ke arah belakang dengan kecepatan putar motor sebesar nilai absolut dari nilai parameter tersebut. tersebut Sedangkan nilai 0 akan membuat motor dalam keadaan berhenti dengan pengereman (breaking). (
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
20
9.
void Maju();
Fungsi Maju dapat digunakan untuk memerintahkan robot bergerak maju dengan kecepatan konstan. 10. void
Mundur();
Fungsi Mundur dapat digunakan untuk
memerintahkan robot bergerak
mundur dengan kecepatan konstan. 11. void
BelokKanan();
Fungsi BelokKanan dapat digunakan untuk memerintahkan robot bergerak belok ke kanan dengan kecepatan konstan. 12. void
BelokKiri();
Fungsi BelokKiri dapat digunakan untuk
memerintahkan robot bergerak
belok ke kiri dengan kecepatan konstan. 13. void
ManuverKanan();
Fungsi ManuverKanan dapat digunakan untuk
memerintahkan robot
bergerak belok ke kanan dengan kecepatan konstan. 14. void
ManuverKiri(); rKiri();
Fungsi ManuverKiri dapat digunakan untuk memerintahkan robot bergerak belok ke kiri dengan kecepatan konstan. 15. void
Stop();
Fungsi Stop dapat digunakan untuk memerintahkan robot untuk berhenti atau diam di tempat. 16. void
Maju(unsigned unsigned char t);
Fungsi Maju dapat digunakan untuk memerintahkan robot bergerak maju dengan kecepatan konstan selama t milliseconds. 17. void
Mundur(unsigned unsigned char t);
Fungsi Mundur dapat digunakan untuk
memerintahkan robot bergerak
mundur dengan kecepatan konstan selama t milliseconds. 18. void
BelokKanan(unsigned unsigned char t);
Fungsi BelokKanan dapat digunakan untuk memerintahkan robot bergerak belok ke kanan dengan kecepatan konstan selama t milliseconds. milliseconds 19. void
BelokKiri(unsigned unsigned char t);
Fungsi BelokKiri dapat digunakan untuk
memerintahkan robot bergerak
belok ke kiri dengan kecepatan konstan selama t milliseconds. Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
21
20. void
ManuverKanan( ManuverKanan(unsigned char t);
Fungsi ManuverKanan dapat digunakan untuk
memerintahkan robot
bergerak belok ke kanan dengan deng kecepatan konstan selama t milliseconds. milliseconds 21. void
ManuverKiri( ManuverKiri(unsigned char t);
Fungsi ManuverKiri dapat digunakan untuk memerintahkan robot bergerak belok ke kiri dengan kecepatan konstan selama t milliseconds. 22. void
Stop(unsigned unsigned long t);
Fungsi Stop dapat digunakan untuk memerintahkan robot berhenti selama t milliseconds. 23. void
RunningLed(unsigned unsigned char t);
Fungsi RunningLed dapat digunakan untuk
memerintahkan led l indikator
menyala secara bergantian dengan selang waktu selama t milliseconds. milliseconds 24. double
PosisiRobot();
Fungsi PosisiRobot sisiRobot dapat digunakan untuk mengetahui posisi penyimpangan robot dari jalur garis. garis Jika robot berada pada posisi kanan garis maka nilai return value dari fungsi ini adalah negatif. Jika robot berada pada posisi kiri garis maka nilai return value dari fungsi ini adalah positif. Sedangkan jika robot berada pada posisi tengah garis maka nilai return value dari fungsi ini adalah 0. 0 Range nilai dari return value adalah -15 sampai 15. 25. void
LineFollower();
Fungsi
LineFollower
dapat
digunakan
untuk
memerintahkan
robot
bernavigasi mengikuti garis secara otomatis. Penggunaan fungsi ini lebih mudah karena seluruh algoritma pada line follower sudah dikemas dalam sebuah fungsi yang dapat disertakan dalam sebuah program.
2.5
Library JoystickPS.h .h Selain menyertakan library BarelangTracerino.h pada Arduino IDE yang digunakan untuk memprogram robot Barelang Tracerino juga terdapat library JoystickPS.h. Library JoystickPS.h ini bisa digunakan pada mode pengendalian robot secara manuall melalui joystick playstation. Adapun beberapa fungsi yang dapat digunaka pada library JoystickPS.h ini antara lain sebagai berikut :
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
22
1.
void Inisialisasi();
Fungsi ini digunakan untuk mendeklarasikan perangkat joystick sebelum joystick tersebut digunakan. 2.
bool Up();
Fungsi Up digunakan untuk mendeteksi penekanan tombol up pada joystick. Jika tombol up ditekan maka return value dari fungsi ini akan bernilai true. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false. false 3.
bool Down();
Fungsi Down digunakan untuk mendeteksi penekanan tombol down pada joystick.. Jika tombol down ditekan maka return value dari fungsi ini akan bernilai true.. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false. 4.
bool Right();
Fungsi Right digunakan untuk mendeteksi penekanan tombol right pada joystick.. Jika tombol right ditekan maka return value dari fungsi ini akan bernilai true.. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false. 5.
bool Left();
Fungsi Left digunakan untuk mendeteksi penekanan tombol left pada joystick. Jika tombol left ditekan maka return value dari fungsi ini akan bernilai true. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false. false 6.
bool Circle();
Fungsi Circle digunakan untuk mendeteksi penekanan tombol circle pada joystick.. Jika tombol circle ditekan maka return value dari fungsi ini akan bernilai true.. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false. 7.
bool Square();
Fungsi Square digunakan untuk mendeteksi penekanan tombol square pada joystick.. Jika tombol square ditekan maka return value dari fungsi ini akan bernilai true.. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false. 8.
bool Triangle();
Fungsi Triangle digunakan untuk mendeteksi penekanan tombol triangle pada joystick.. Jika tombol triangle ditekan maka return value dari fungsi ini akan bernilai true.. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false. Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
23
9.
bool Cross();
Fungsi Cross digunakan untuk mendeteksi penekanan tombol cross pada joystick.. Jika tombol cross ditekan maka return value dari fungsi ini akan bernilai true.. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false. 10. bool
R1();
Fungsi R1 digunakan untuk mendeteksi penekanan tombol R1 pada joystick. Jika tombol R1 ditekan maka return value dari fungsi ini akan bernilai true. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false. false 11. bool
R2();
Fungsi R2 digunakan untuk mendeteksi penekanan tombol R2 pada joystick. Jika tombol R2 ditekan maka return value dari fungsi ini akan bernilai true. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false. false 12. bool
L1();
Fungsi L1 digunakan untuk mendeteksi penekanan tombol L1 pada joystick. Jika tombol L1 ditekan maka return value dari fungsi ini akan bernilai true. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false. false 13. bool
L2();
Fungsi L2 digunakan untuk mendeteksi penekanan tombol L2 pada joystick. Jika tombol L2 ditekan maka return value dari fungsi ini akan bernilai true. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false. false 14. bool
Start();
Fungsi Start digunakan untuk mendeteksi penekanan tombol start pada joystick.. Jika tombol start ditekan maka return value dari fungsi ini akan bernilai true.. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false. 15. bool
Select();
Fungsi Select digunakan untuk mendeteksi penekanan tombol select pada joystick.. Jika tombol select ditekan maka return value dari fungsi ini akan bernilai true.. Jika tidak ditekan mana return value dari fungsi ini akan bernilai false.
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
24
2.6
Percobaan Pemrograman Dasar 2.5.1 Mengontrol Nyala Lampu Led Mode Melaui Tombol Mode Percobaan kali ini bertujuan untuk membuat sebuah program yang berfungsi untuk mengatur m kondisi hidup dan mati led mode. ode. Kondisi nyala dan mati led mode ode akan aka diatur dari penekanan tombol mode.. Jika tombol mode m berada pada posisi manual maka led mode ode akan menyala sedangkan jika tombol mode ode berada pada posisi automatic maka led mode ode akan mati. mati Prosedur : 1.
Tuliskan sintaks program di bawah ini pada Arduino IDE, IDE #include BarelangTracerino Robot; void setup() { Robot.Inisialisasi(); }
// Inisialisasi robot
void loop() { // Jika tombol mode pada posisi manual // Maka led mode menyala if(Robot.ModeManual()) (Robot.ModeManual()) { Robot.LedModeOn(); } // Jika tombol mode pada posisi automatic // Maka led mode mati else{ Robot.LedModeOff(); } }
2.
lakukan akukan kompilasi dan upload program pada kontroler Barelang Tracerino,,
3.
Setelah program berhasil di-upload di ke kontroler Barelang Tracerino lakukan penekanan tombol mode m dan perhatikann kondisi nyala atau mati pada led mode. m
2.5.2 Running Led Percobaan kali ini bertujuan untuk membuat sebuah program yang berfungsi untuk menyalakan led indikator secara bergantian bergantia dengan selang waktu tertentu. Led akan menyala secara bergantian setelah terjadi penekanan pada tombol start. start
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
25
Prosedur : 1.
Tuliskan sintaks program berikut ini pada Arduino IDE, IDE #include BarelangTracerino Robot;
2.
void setup() { Robot.Inisialisasi(); while(!Robot.Start()); (!Robot.Start()); }
// Inisialisasi robot // Menunggu penekanan tombol start
void loop() { Robot.RunningLed(50); }
// Program running led dengan selang waktu 50ms
lakukan akukan kompilasi dan upload program pada kontroler Barelang Tracerino,,
3.
setelah etelah program berhasil di-upload di ke kontroler Barelang Tracerino lakukan penekanan tombol start dan perhatikan kondisi nyala atau mati pada led indikator. indikator
2.5.3 Program Pergerakan Dasar Robot Percobaan kali ini bertujuan untuk membuat sebuah program yang berfungsi untuk memerintahkan sebuah robot untuk bergerak maju, mundur, belok kanan, belok kiri, manuver kanan, dan manuver kiri. Prosedur : 1.
Tuliskan sintaks program berikut ini pada Arduino IDE, IDE #include BarelangTracerino Robot; void setup() { Robot.Inisialisasi(); // while(!Robot.Start()) (!Robot.Start()) { // Robot.RunningLed(50); // } } void loop() { Robot.Maju(2000); // Robot.BelokKanan(2000); // Robot.BelokKiri(2000); // Robot.ManuverKanan(2000); // Robot.ManuverKiri(2000); // Robot.Mundur(2000); // }
Inisialisasi robot Menunggu penekanan tombol start Program running led
Robot Robot Robot Robot Robot Robot
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
maju selama 2 detik belok kanan selama 2 detik belok kiri selama 2 detik manuver kanan selama 2 detik manuver kiri selama 2 detik mundur selama 2 detik
26
2.
lakukan akukan kompilasi dan upload program pada kontroler Barelang Tracerino,,
3.
setelah etelah program berhasil di-upload, di , tekanlah tombol start beberapa saat untuk melihat pergerakan dasar pada robot.
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
27
BAB II PEMROGRAMAN ROBOT II 3.1
Algoritma Robot Line Follower F Robot line follower pada dasarnya memiliki fungsi utama yaitu mengikuti garis dengan warna tertentu. Untuk dapat melakukan fungsi tersebut robot obot harus dilengkapi dengan sensor garis yang berfungsi untuk mendeteksi posisi robot terhadap garis. Posisi kemiringan robot nantinya akan menentukan pergerakan robot apakah maju, ma belok kanan atau belok kiri. kiri Pada robot Barelang Tracerino informasi posisi kemiringan kemiringan robot dapat diperoleh dengan memanggil fungsi PosisiRobot. Return value dari fungsi PosisiRobot akan merepresentasikan nilai dari -15 sampai 15.. Nilai -15 berarti posisi robot terhadap erhadap garis terlalu miring ke kiri. kiri Sedangkan nilai 15 berarti posisi robot terhadap garis terlalu miring ke kanan. Sedangkan jika posisi robot berada tepat di tengah garis nilai return value adalah 0. Nilai -15 sampai 155 yang merupakan hasil return value ini nantinya akan dijadikan referensi robot untuk bergerak berge mencapai posisi tengah (nilai nilai posisi 0). 0
Gambar 28. Ilustrasi posisi robot
Modul Pemrograman Robot Line Follower - Eko Rudiawan Teknik Elektro - Politeknik Negeri Batam
28
Algoritma sederhana yang dapat diterapkan antara lain dengan menggunakan kontrol if-else. Secara sederhana logika yang dapat diterapkan antara lain sebagai berikut ini. 1.
Jika robot berada pada posisi kanan garis maka robot harus berbelok ke kiri k agar posisinya bisa kembali ke tengah garis, garis
2.
jika ika robot berada pada posisi kiri garis maka robot harus harus berbelok ke kanan agar posisinya bisa kembali ke k tengah garis,
3.
jika ika robot berada pada posisi tengah garis maka robot harus harus bergerak maju agar posisi di tengah garis bisa dipertahankan. dipertahankan Dari penalaran logika sederhana tersebut selanjutnya dapat kita terapkan t dalam
pemrograman robot seperti berikut ini. 1.
Robot berada pada posisi kanan garis jika nilai posisinya lebih lebi besar dari atau sama dengan 5,
2.
Robot berada pada posisi kiri garis jika nilai posisinya lebih kecil dari atau sama dengan -5, 5,
3.
Robot berada pada posisi tengah garis jika nilai posisinya lebih besar dari -5 dan lebih kecil dari 5. 5 Dari penalaran enalaran sederhana diatas maka dapat dituliskan dalam sintaks program
seperti berikut ini. if(Robot.PosisiRobot()>=5) (Robot.PosisiRobot()>=5) { Robot.BelokKiri(); } else if(Robot.PosisiRobot() && Robot.PosisiRobot() =5) (Robot.PosisiRobot()>=5) { Robot.BelokKiri(); } // Jika posisi robot berada di kiri garis // Robot berbelok ke kanan else if(Robot.PosisiRobot() && Robot.PosisiRobot()
View more...
Comments