DT-ROBOT Line Follower

dokumen-dokumen yang mirip
DT-SENSE Color Sensor Q uick S tart

Wireless Gamepad Interface

Smart Peripheral Controller Low Cost Serial LCD/OLED

DT-SENSE. Flame Detector

Neo Stepper Motor 1.2A

DT-SENSE. IR Proximity Detector

DT-SENSE. Color Sensor

DT-SENSE. Barometric Pressure & Temperature Sensor

DT-SENSE. Humidity Sensor

DT-SENSE. Temperature & Humidity Sensor

DT-SENSE. Temperature Sensor

DT-SENSE. UltraSonic Ranger (USR)

DT-SENSE. Photoreflector

AVR USB ISP Trademarks & Copyright

DT-SENSE. Photoreflector ver. 2.0

AVR USB ISP mkii Trademarks & Copyright

AVR USB ISP mkii ver 2

SPC SPC. SPC Application Note AN175 Bluetooth Mobile Robot. Application Note AN175

DT-COMBO AVR-51 STARTER KIT

DT-SENSE Gas Sensor Trademarks & Copyright

1 Pendahuluan Spesifikasi Sistem yang Dianjurkan... 3

Gamepad Interface. Smart Peripheral Controller

AT89 USB ISP Trademarks & Copyright

Servo Motor Controller

BAB IV HASIL PENGUKURAN DAN PENGUJIAN ALAT SISTEM PENGONTROL BEBAN DAYA LISTRIK

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

BAB III PERENCANAAN PERANGKAT KERAS DAN LUNAK

BAB V PENGUJIAN DAN ANALISIS. dapat berjalan sesuai perancangan pada bab sebelumnya, selanjutnya akan dilakukan

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISA DAN PERANCANGAN

AVR-51 USB ISP Trademarks & Copyright

BAB III METODE PENELITIAN. pada blok diagram tersebut antara lain adalah webcam, PC, microcontroller dan. Gambar 3.1 Blok Diagram

BAB III PERANCANGAN ALAT

BAB III PERANCANGAN ALAT

BAB IV PENGUJIAN DAN ANALISA

TUGAS MATAKULIAH APLIKASI KOMPUTER DALAM SISTEM TENAGA LISTRIK FINAL REPORT : Pengendalian Motor DC menggunakan Komputer

BAB IV IMPLEMENTASI DAN EVALUASI

BAB III ANALISIS DAN PERANCANGAN

BAB IV HASIL DAN PEMBAHASAN. ketepatan masing-masing bagian komponen dari rangkaian modul tugas akhir

de KITS Application Note AN51 How 2 Use de KITS SPC Character LCD w/ PC

PC-Link. 1x Komputer / Laptop dengan OS Windows 2000, Windows XP atau yang lebih tinggi. Gambar 1 Blok Diagram AN200

Gambar 3.1 Diagram Blok Alat

BAB III METODE PENELITIAN. oleh karenanya akan dibuat seperti pada Gambar 3.1.

EMS. 1 A Dual H-Bridge

ELKAHFI 200 TELEMETRY SYSTEM

EMS. 2 A Dual H-Bridge

Daftar Isi. Lampiran Skema... 7

PC-Link. PC-Link. Application Note AN202

BAB III PERANCANGAN SISTEM

BAB IV PENGUJIAN ALAT DAN ANALISA

EMS. Low Voltage Dual H-Bridge

How2Use DT-51 AT89C51XXX BMS. Oleh: Tim IE. Gambar 1 Tata Letak DT-51 AT89C51XXX BMS

Bab IV PENGOLAHAN DATA DAN ANALISA

BAB III PERANCANGAN DAN PEMBUATAN ALAT

Trademarks & Copyright

BAB III PERANCANGAN. Pada bab ini akan dibahas mengenai beberapa hal dasar tentang bagaimana. simulasi mobil automatis dirancang, diantaranya adalah :

BAB III DESKRIPSI DAN PERANCANGAN SISTEM

Akses SD Card & FRAM Menggunakan AVR. Oleh: Tim IE

BAB II DASAR TEORI. mikrokontroler yang berbasis chip ATmega328P. Arduino Uno. memiliki 14 digital pin input / output (atau biasa ditulis I/O,

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM

Smart Peripheral Controller ALPHANUMERIC DISPLAY

DT-BASIC Mini System. Gambar 1 Blok Diagram AN132

DHT11 Temperature and Humidity Sensor Board Gambar 1 Blok Diagram AN196. 5V (Power) GND (Power)

DT-SENSE Application Note

BAB III PERANCANGAN DAN REALISASI ALAT

DT-BASIC Application Note

BAB III METODE PENELITIAN. diperlukan dengan beberapa cara yang dilakukan, antara lain:

BAB III PERANCANGAN DAN PEMBUATAN APLIKASI

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN

BAB II LANDASAN TEORI

BAB III PERANCANGAN ALAT SIMULASI PEGENDALI LAMPU JARAK JAUH DAN DEKAT PADA KENDARAAN SECARA OTOMATIS

Daftar Isi. Lampiran Skema... 7

PENGENALAN ARDUINO. SPI : 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Pin-pin ini mensupport komunikasi SPI menggunakan SPI library.

PC-Link. Gambar 1 Blok Diagram AN201. AGND (J3 pin 1) Pin 1 VCC (J3 pin 2) Pin 3 Dapat dipilih salah satu dari A0 s.d. A7 (J3 pin 3 s.d.

BAB IV PENGUJIAN DAN PEMBAHASAN

DQI-03 DELTA ADC. Dilengkapi LCD untuk menampilkan hasil konversi ADC. Dilengkapi Zero offset kalibrasi dan gain kalibrasi

DT-SENSE THERMOPILE ARRAY SENSOR

Membuat Robot Line Follower Hendawan Soebhakti Dosen Teknik Elektronika Politeknik Negeri Batam

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS

BAB 3 PERANCANGAN ALAT DAN PEMBUATAN SISTEM

Controller System. CodeVisionAVR Demo

Programmer. Petunjuk Penggunaan

BAB III MIKROKONTROLER

BAB III PERANCANGAN. Gambar 3.1. Blok sistem secara keseluruhan. Sensor tegangan dan sensor arus RTC. Antena Antena. Sensor suhu.

BAB III PERANCANGAN PERANGKAT KERAS MOBILE-ROBOT

BAB IV PENGUJIAN DAN ANALISA. mana sistem berfungsi sesuai dengan rancangan serta mengetahui letak

BAB V HASIL DAN PEMBAHASAN. Pengujian dilakukan terhadap 8 sensor photodioda. mendeteksi garis yang berwarna putih dan lapangan yang berwarna hijau.

BAB III PERANCANGAN SISTEM

BAB III ANALISIS DAN PERANCANGAN

BAB IV PENGUJIAN DAN ANALISA. komponen-komponen sistem yang telah dirancang baik pada sistem (input)

DT-I/O. I/O Application Notes AN164 Komunikasi Jarak Jauh antara 2 PC dengan RS-485. Application Note AN164

BAB III PERANCANGAN SISTEM

DGSM300 DELTA GSM MODEM INTERFACE

Transkripsi:

DT-ROBOT Line Follower Trademarks & Copyright AT, IBM, and PC are trademarks of International Business Machines Corp. Pentium is a registered trademark of Intel Corporation. Windows is a registered trademark of Microsoft Corporation. CodeVisionAVR is copyright by Pavel Haiduc, HP InfoTech s.r.l.

Daftar Isi 1 Pendahuluan... 1.1 Spesifikasi DT-ROBOT LINE FOLLOWER... 1.2 Sistem yang Dianjurkan... 1.3 Pergerakan DT-ROBOT LINE FOLLOWER... 1.4 Algoritma Line Following... 3 3 3 4 4 2 Mengoperasikan DT-ROBOT LINE FOLLOWER... 2.1 Program Default Tester... 2.2 DT-ROBOT LINE FOLLOWER GUI... 2.2.1 COM Setting (A)... 2.2.2 Connection Status (B)... 2.2.3 Test Connection (C)... 2.2.4 Track Mode (D)... 2.2.5 Raw Data (E)... 2.2.6 Track Threshold (F)... 2.2.7 Digital Data (G)... 2.2. Sensor (H)... 2.2. Left Motor Action (I)... 2.2.10 Left Motor Speed (J)... 2.2.11 Right Motor Action (K)... 2.2.12 Right Motor Speed (L)... 2.2.13 Send Setting to DT-ROBOT (M)... 2.2.14 DT-ROBOT LINE FOLLOWER Model (N)... 5 5 7 3 Rutin Program Line Following... 3.1 Inisialisasi LCD... 3.2 Kirim Byte ke LCD... 3.3 Tampilkan Kalimat ke LCD... 3.4 Tampilkan Angka Desimal ke LCD... 3.5 Tampilkan Angka Biner ke LCD... 3.6 Atur Posisi Kursor... 3.7 Baca ADC... 3. Inisialisasi DT-ROBOT LINE FOLLOWER... 3. Kendali Motor Kiri... 3.10 Kendali Motor Kanan... 10 10 10 10 11 11 11 11 11 12 4 Perangkat Keras DT-ROBOT LINE FOLLOWER... 4.1 Tata Letak Komponen DT-ROBOT LINE FOLLOWER... 4.2 Fungsi Konektor dan Komponen... 12 12 13 5 Prosedur Pengujian... 14 Lampiran A. B. Skematik DT-ROBOT LINE FOLLOWER... Penjelasan Bagian-bagian DT-ROBOT LINE FOLLOWER... 2 16 17

1. PENDAHULUAN Sebuah line-following robot atau disebut juga line follower sangat sering dijumpai dan dibuat oleh para penghobi robot. Banyak sekali kompetisi robotik yang berupa lomba line following. Line atau jalur yang diikuti biasanya merupakan jalur gelap di atas permukaan terang atau sebaliknya. Robot mendeteksi garis dengan cara mengukur intensitas cahaya yang dipantulkan dari permukaan yang dilaluinya. Intensitas cahaya yang dipantulkan permukaan gelap lebih sedikit daripada yang dipantulkan oleh permukaan yang terang. DT-ROBOT LINE FOLLOWER merupakan robot berpenggerak roda yang sangat cocok sebagai sarana pembelajaran tentang robot line follower untuk tingkat pemula sampai pembelajaran pemrograman tingkat lanjut. Untuk tingkat pemula, DT-ROBOT LINE FOLLOWER telah dilengkapi dengan algoritma line following standar yang telah teruji pada berbagai model lintasan line following, mulai dari model lintasan yang sederhana sampai model lintasan yang sulit. Para pengguna tingkat pemula dapat bereksperimen dengan mengatur parameter-parameter yang tersedia melalui software GUI yang disediakan. Untuk tingkat menengah, disediakan contoh program untuk robot line follower yang telah diuji dengan DT-ROBOT LINE FOLLOWER. Para pengguna dapat mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line following, membuat atau menambahkan berbagai algoritmanya sendiri agar robot line follower-nya menjadi lebih cerdas. Untuk tingkat lanjut, seluruh rangkaian dan komponen elektronika dari DTROBOT LINE FOLLOWER akan dijabarkan secara lengkap sehingga para pecinta robot dan elektronika dapat berkreasi dan bereksperimen secara lebih bebas. Basis DT-ROBOT LINE FOLLOWER dapat dikembangkan untuk robot dengan fungsi, sensor, atau gerakan motorik yang berbeda. Tersedia juga komponen penunjang DT-ROBOT LINE FOLLOWER yang dijual terpisah antara lain dalam hal motor penggerak dan sensor. 1.1. SPESIFIKASI DT-ROBOT LINE FOLLOWER Spesifikasi DT-ROBOT LINE FOLLOWER adalah sebagai berikut Sumber catu daya menggunakan 6 x batere AA (@1,2 1,5 VDC). Berbasis ATmega16. Menggunakan IC motor driver SN754410 dengan konfigurasi dual full HBridge dan kemampuan arus kontinu tiap driver 1 A. Disertai dengan DT-ROBOT Mini Metal High Speed Motor Set sebagai penggerak dan DT-SENSE Line Tracking SFH 4 Sensor untuk deteksi jalur. Dilengkapi dengan LCD karakter x 2. Tersedia 2 tactile switch sebagai input dan 1 tactile switch untuk reset. Jalur komunikasi menggunakan antarmuka UART RS-232. Pin Input/Output kompatibel dengan level tegangan TTL dan CMOS. 1.2. SISTEM YANG DIANJURKAN Sistem yang dianjurkan untuk penggunaan DT-ROBOT LINE FOLLOWER adalah Perangkat keras PC AT Pentium IBM Compatible dengan port serial COM/USB. DVD-ROM Drive dan Hard disk. 3

Perangkat lunak Sistem operasi Windows XP. CodeVisionAVR. File/Folder yang ada pada CD/DVD program default.hex, default.eep, folder GUI, folder testing, folder CodeVisionAVR Evaluation, datasheet, Manual DT-ROBOT Line Follower, Manual DT-ROBOT Mini Metal High Speed Motor Set, dan Manual DT-SENSE Line Tracking SFH 4 Sensor. 1.3. PERGERAKAN DT-ROBOT LINE FOLLOWER DT-ROBOT LINE FOLLOWER memiliki 2 buah roda yang masing-masing digerakkan oleh sebuah motor (Differential Drive). Oleh karena itu terdapat paling tidak terdapat macam gerakan yang dapat dilakukan oleh robot seperti yang ditunjukkan pada tabel berikut ini. Gerakan Keterangan Lurus Motor kiri dan motor kanan berputar maju dengan kecepatan yang sama Belok Kiri Motor kiri dan motor kanan berputar maju dengan kecepatan motor kanan lebih besar daripada kecepatan motor kiri Belok Kanan Motor kiri dan motor kanan berputar maju dengan kecepatan motor kiri lebih besar daripada kecepatan motor kanan Tikung Kiri Motor kiri berhenti dan motor kanan berputar maju dengan kecepatan tertentu Tikung Kanan Motor kanan berhenti dan motor kiri berputar maju dengan kecepatan tertentu 1.4. Putar Kiri Motor kiri berputar mundur dan motor kanan berputar maju Putar Kanan Motor kiri berputar maju dan motor kanan berputar mundur Mundur Motor kiri dan motor kanan berputar mundur Stop Motor kiri dan motor kanan berhenti ALGORITMA LINE FOLLOWING Bila sensor garis yang terpasang pada DT-ROBOT memiliki 4 buah sensor, maka semua gerakan robot juga ditentukan oleh hasil pembacaan keempat sensor tersebut. Misalkan bila sensor berada tepat di atas jalur maka hasil pembacaannya bernilai 1 dan bila sensor tidak mendeteksi jalur maka hasil pembacaannya bernilai 0. Contoh keputusan yang dapat diambil berdasarkan hasil pembacaan sensor dapat dilihat pada tabel berikut ini. Hasil Sensor Contoh Keputusan Yang Dapat Diambil 0110 Jalur tepat di tengah. Robot bergerak lurus. 0010 Jalur agak menyimpang ke kanan. Robot belok kanan. 0011 Jalur menyimpang ke kanan. Robot tikung kanan. 0001 Jalur ada di ujung ke kanan. Robot putar kanan. 0111 Kemungkinan ada tikungan ke kanan. Robot putar kanan. 0100 Jalur agak menyimpang ke kiri. Robot belok kiri. 1100 Jalur menyimpang ke kiri. Robot tikung kiri. 4

1000 Jalur ada di ujung ke kiri. Robot putar kiri. 1110 Kemungkinan ada tikungan ke kiri. Robot putar kiri. 1111 Kemungkinan ada perempatan. Robot bergerak lurus. 0000 Robot keluar jalur. Jalankan algoritma untuk kembali ke jalur. lain-lain Robot tetap bergerak sesuai perintah sebelumnya. Jika seluruh sensor tidak mendeteksi jalur sehingga hasil sensor adalah 0000, maka robot harus menjalankan algoritma untuk kembali ke jalur. Terdapat berbagai algoritma yang dapat dilakukan untuk mencari jalur. Salah satu algoritma yang sederhana adalah dengan menyimpan hasil keputusan terakhir robot. Misalkan jika sebelumnya robot sedang berusaha menikung ke kiri sebelum kehilangan jalur, maka saat jalur menghilang robot dapat diperintahkan untuk berputar ke kiri untuk kembali ke jalur. Demikian juga jika sebelumnya robot berusaha menikung ke kanan, maka robot dapat diperintahkan untuk berputar ke kanan. Jika sebelumnya robot sedang bergerak maju lurus dan kemudian jalur menghilang, maka robot dapat diperintahkan untuk bergerak mundur. 2. MENGOPERASIKAN DT-ROBOT LINE FOLLOWER 2.1. PROGRAM DEFAULT TESTER DT-ROBOT LINE FOLLOWER telah dilengkapi dengan algoritma line following standar yang telah teruji pada berbagai model lintasan line following, mulai dari model lintasan yang sederhana sampai model lintasan yang sulit. Para pengguna tingkat pemula dapat bereksperimen dengan mengatur parameterparameter yang tersedia melalui software GUI yang disediakan. Algoritma tersebut sudah terprogram di robot. Di dalam DVD yang disertakan, algoritma default tersebut disimpan dengan nama file default.hex untuk program dan default.eep untuk parameter awal. LCD ISP Port ON/OFF Switch Terminal Baterai RS-232 Tempat Baterai Tombol Reset Tombol TS1 5 Tombol TS2

Pada saat DT-ROBOT LINE FOLLOWER pertama kali dinyalakan, pada LCD akan tampil Menu Tracking yang ditandai dengan tulisan "READY" pada baris bawah dan kombinasi digital hasil pembacaan sensor pada baris atas. XXXX READY! Jika Tombol TS1 ditekan, maka DT-ROBOT LINE FOLLOWER akan mulai melakukan line following dan pada LCD akan tampil tulisan seperti berikut ini. TRACKING START! Untuk menghentikan line following, dapat dilakukan dengan menekan Tombol TS2 sehingga DT-ROBOT LINE FOLLOWER kembali ke Menu Tracking. Pada saat DT-ROBOT LINE FOLLOWER berada pada Menu Tracking, dan Tombol TS2 ditekan selama 2 detik, maka DT-ROBOT LINE FOLLOWER akan berpindah ke menu selanjutnya yaitu Menu Raw Data. SSS SSS SSS SSS Pada posisi Menu Raw Data ini pada LCD akan tampil nilai hasil pembacaan sensor sehingga pengguna dapat melakukan pengaturan pada variabel resistor masing-masing sensor serta mencatat nilai sensor jika berada di atas jalur dan nilai sensor jika berada di atas permukaan selain jalur. Untuk berpindah dari Menu Raw Data ke menu selanjutnya dapat dilakukan dengan menekan Tombol TS2 selama 2 detik. Menu selanjutnya adalah Menu Threshold yang ditandai dengan tampilan LCD yang menyerupai gambar berikut ini. XXXX Th = YYY Threshold atau Batas merupakan sebuah nilai yang digunakan untuk mengkategorikan apakah sensor berada di atas jalur atau tidak. Untuk mode Black Track yaitu jalur gelap di atas permukaan terang, jika nilai hasil pembacaan sensor lebih besar daripada nilai Batas maka akan dikategorikan sebagai jalur (data digital bernilai 1). Sedangkan untuk mode White Track yaitu jalur terang di atas permukaan gelap, jika nilai hasil pembacaan sensor lebih kecil atau sama dengan nilai Batas maka akan dikategorikan sebagai jalur (data digital bernilai 1). Untuk menaikkan nilai Batas dapat dilakukan dengan menekan Tombol TS1 sedangkan untuk menurunkan nilai Batas dapat dilakukan dengan menekan Tombol TS1 dan Tombol TS2 secara bersamaan. 6

Nilai Batas akan disimpan pada EEPROM DT-ROBOT LINE FOLLOWER jika pengguna berpindah ke menu selanjutnya dengan menekan Tombol TS2 selama 2 detik. Menu selanjutnya adalah Menu Track Mode yang ditandai dengan tampilan LCD yang menyerupai gambar berikut ini. Black Track Pada posisi Menu Track Mode, pengguna dapat menentukan apakah jalur yang akan dilalui oleh DT-ROBOT LINE FOLLOWER termasuk kategori Black Track yaitu jalur gelap di atas permukaan terang atau White Track yaitu jalur terang di atas permukaan gelap. Untuk merubah track mode dapat dilakukan dengan menekan Tombol TS1. Track mode akan disimpan pada EEPROM DT-ROBOT LINE FOLLOWER jika pengguna berpindah ke menu selanjutnya dengan menekan Tombol TS2 selama 2 detik. 2.2. DT-ROBOT LINE FOLLOWER GUI Untuk memudahkan bereksperimen dengan mengatur parameter-parameter algoritma line following yang disertakan, maka pada paket DT-ROBOT LINE FOLLOWER juga tersedia software GUI yaitu DT-ROBOT-LINE-FOLLOWERGUI. Untuk mengatur parameter-parameter telah tersimpan pada DT-ROBOT LINE FOLLOWER, hubungkan DT-ROBOT LINE FOLLOWER dengan PC melalui jalur komunikasi UART menggunakan kabel serial yang disertakan (parameter komunikasi UART dapat dilihat pada bagian COM Setting). Berikut tampilan dari GUI beserta penjelasan tentang bagian-bagiannya. A B C E G F D H N K I J 7 L M

2.2.1 COM Setting (A) Dengan tombol ini, pengguna dapat memilih Serial/COM port yang akan digunakan. Parameter lain komunikasi UART yang digunakan adalah sebagai berikut 115200 bps data bit 1 stop bit tanpa parity bit tanpa flow control 2.2.2 Connection Status (B) Bagian ini menampilkan status koneksi antara PC dengan DT-ROBOT LINE FOLLOWER. Jika koneksi sukses maka akan tampil tulisan Connected to DTROBOT dengan warna hijau. Sebaliknya jika koneksi gagal, maka akan tampil tulisan Not Connected to DT-ROBOT dengan warna merah. Fungsi lain adalah pada saat melakukan update parameter. Jika update berhasil maka akan muncul tulisan Parameter update success! selama 1 detik. 2.2.3 Test Connection (C) Bagian ini berguna untuk menguji koneksi antara PC dengan DT-ROBOT LINE FOLLOWER. Hasil pengujian akan ditampilkan pada bagian Connection Status. Pada saat tombol ini ditekan, software GUI akan membaca dan menampilkan pengaturan track mode dan threshold yang tersimpan di DTROBOT LINE FOLLOWER. 2.2.4 Track Mode (D) Bagian ini berfungsi untuk mengatur track mode yang digunakan. Dua track mode yang dapat dipilih adalah Black Track yaitu jalur gelap di atas permukaan terang atau White Track yaitu jalur terang di atas permukaan gelap. 2.2.5 Raw Data (E) Saat DT-ROBOT LINE FOLLOWER terkoneksi dengan PC, bagian ini akan menampilkan nilai hasil pembacaan sensor. 2.2.6 Track Threshold (F) Bagian ini berfungsi untuk mengatur nilai Batas yang menentukan apakah nilai hasil pembacaan sensor tersebut dikategorikan sebagai jalur atau tidak. Untuk mode Black Track, jika nilai hasil pembacaan sensor lebih besar daripada nilai Batas maka akan dikategorikan sebagai jalur (data digital bernilai 1). Sedangkan untuk mode White Track, jika nilai hasil pembacaan sensor lebih kecil atau sama dengan nilai Batas maka akan dikategorikan sebagai jalur (data digital bernilai 1). 2.2.7 Digital Data (G) Saat DT-ROBOT LINE FOLLOWER terkoneksi dengan PC, bagian ini akan menampilkan hasil pembandingan Raw Data dengan Track Threshold. 2.2. Sensor (H) Bagian ini digunakan untuk memilih kombinasi nilai digital hasil pembacaan sensor. Bila DT-ROBOT LINE FOLLOWER terkoneksi dengan PC, pada saat salah satu kombinasi dipilih (dapat dipilih menggunakan mouse atau menekan tombol karakter "S" di keyboard), maka akan ditampilkan pengaturan aksi yang tersimpan di DT-ROBOT LINE FOLLOWER untuk kombinasi nilai digital

yang dipilih. Pengaturan aksi untuk kombinasi nilai digital yang dipilih akan tampil pada bagian Left/Right Motor Action beserta pengaturan kecepatan masing-masing motor. 2.2. Left Motor Action (I) Bagian ini berfungsi untuk mengatur aksi atau gerakan apa yang akan dilakukan oleh motor kiri untuk kombinasi nilai digital yang dipilih pada bagian Sensor. Pilihan gerakan yang ada adalah Forward (berputar maju), Stop (berhenti), atau Reverse (berputar mundur). 2.2.10 Left Motor Speed (J) Bagian ini berfungsi untuk mengatur kecepatan (nilai PWM) putaran motor yang dilakukan oleh motor kiri untuk kombinasi nilai digital yang dipilih pada bagian Sensor. Range nilai yang diperbolehkan adalah 0 sampai dengan 1023. Semakin besar nilai yang dipilih, motor kiri akan berputar semakin cepat. 2.2.11 Right Motor Action (K) Bagian ini berfungsi untuk mengatur aksi atau gerakan apa yang akan dilakukan oleh motor kanan untuk kombinasi nilai digital yang dipilih pada bagian Sensor. Pilihan gerakan yang ada adalah Forward (berputar maju), Stop (berhenti), atau Reverse (berputar mundur). 2.2.12 Right Motor Speed (L) Bagian ini berfungsi untuk mengatur kecepatan (nilai PWM) putaran motor yang dilakukan oleh motor kanan untuk kombinasi nilai digital yang dipilih pada bagian Sensor. Range nilai yang diperbolehkan adalah 0 sampai dengan 1023. Semakin besar nilai yang dipilih, motor kanan akan berputar semakin cepat. 2.2.13 Send Setting to DT-ROBOT (M) Bagian atau tombol ini berfungsi untuk mengirimkan setting parameter Mode Track, Track Thershold, Left/Right Motor Action, dan Speed dari PC ke DTROBOT LINE FOLLOWER. Parameter-parameter di atas akan dikirim ke DTROBOT LINE FOLLOWER jika software telah terkoneksi dengan DT-ROBOT LINE FOLLOWER dan tombol "Send Setting to DT-ROBOT" ini ditekan. Jika update parameter berhasil, maka akan muncul tulisan Parameter update success! selama 1 detik pada bagian Connection Status. 2.2.14 DT-ROBOT LINE FOLLOWER Model (N) Bagian ini berfungsi memberikan ilustrasi salah satu kemungkinan posisi DTROBOT LINE FOLLOWER terhadap jalur berdasarkan kombinasi nilai digital yang dipilih pada bagian Sensor. 3. RUTIN PROGRAM LINE FOLLOWING Untuk tingkat menengah, disediakan contoh program untuk robot line follower yang telah diuji dengan DT-ROBOT LINE FOLLOWER. Para pengguna dapat mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line following, membuat atau menambahkan berbagai algoritmanya sendiri agar robot line follower-nya menjadi lebih cerdas.

Di dalam DVD yang disertakan, contoh program tersebut disimpan di dalam folder testing. Contoh program dapat dibuka dengan menggunakan software CodeVisionAVR versi evaluasi. Contoh program tersebut memiliki 3 file utama yaitu "testing.c" yang berisi program utama algoritma line following, "LCDRoutine.c" yang berisi fungsifungsi yang berhubungan dengan LCD, dan "OtherRoutine.c" yang berisi fungsi-fungsi lainnya seperti contohnya fungsi untuk mengatur arah dan kecepatan (nilai PWM) motor. Pada program contoh tersebut, terdapat beberapa prosedur dan fungsi yang dapat digunakan untuk membantu pengguna dalam pemrograman. Berikut ini adalah beberapa prosedur dan fungsi yang digunakan dalam "LCDRoutine.c" dan "OtherRoutine.c" 3.1 Inisialisasi LCD Syntax void initlcd(void); Fungsi Menginisialisasi LCD. Panggil prosedur ini untuk melakukan proses inisialisasi LCD dan cukup dilakukan 1 kali di awal program. Prosedur ini digunakan oleh prosedur initmain. Contoh initlcd(); 3.2 Kirim Byte ke LCD Syntax void putlcd(unsigned char moda, unsigned char comm); Fungsi Mengirimkan 1 byte Command atau Data ke LCD. Nilai moda yang valid adalah 0 jika yang dikirimkan adalah LCD command dan 1 jika yang dikirimkan adalah LCD data. Nilai comm merupakan nilai LCD command dan LCD data yang dikirimkan. Daftar LCD command dan data yang dapat dikirim dapat dilihat pada datasheet LCD. Contoh putlcd(0,0x01); akan membersihkan layar LCD. 3.3 Tampilkan Kalimat ke LCD Syntax void lcd_putsf(flash unsigned char *str); Fungsi menampilkan string/kalimat di LCD pada posisi kursor sekarang. *str berisi alamat awal kalimat pada memori flash. Contoh lcd_putsf("start!"); akan menuliskan kalimat "START!" di LCD. 3.4 Tampilkan Angka Desimal ke LCD Syntax void lcd_putint(unsigned int value,unsigned char dispnum); Fungsi menampilkan nilai yang dimasukan dalam bentuk bilangan desimal ke LCD pada posisi kursor sekarang. Nilai value merupakan nilai yang ingin ditampilkan. Nilai dispnum berisi jumlah karakter yang ingin ditampilkan. Nilai dispnum yang valid adalah 1 sampai dengan 5. Contoh lcd_putint(1234,4); akan menuliskan 1234 di LCD. lcd_putint(angka,3); akan menuliskan isi variabel angka di LCD sebanyak 3 karakter (ratusan, puluhan, satuan). 10

3.5 Tampilkan Angka Biner ke LCD Syntax void lcd_putbin(unsigned char value,unsigned char dispnum); Fungsi menampilkan nilai yang dimasukan dalam bentuk bilangan biner ke LCD pada posisi kursor sekarang. Nilai value merupakan nilai yang ingin ditampilkan. Nilai dispnum berisi jumlah karakter yang ingin ditampilkan. Nilai dispnum yang valid adalah 1 sampai dengan. Contoh lcd_putbin(12,4); akan menuliskan 1100 di LCD. lcd_putint(angka,5); akan menuliskan isi variabel angka di LCD dalam bentuk biner sebanyak 5 karakter. 3.6 Atur Posisi Kursor Syntax void locate(unsigned char lines, unsigned char cols); Fungsi Mengatur posisi kursor agar berada pada posisi baris dan kolom tertentu. Nilai lines merupakan posisi baris. Nilai yang valid adalah 1 sampai dengan 2 untuk LCD karakter x2. Nilai cols merupakan posisi kolom. Nilai yang valid adalah 1 sampai dengan untuk LCD karakter x2. Contoh locate(1,1); akan meletakkan kursor pada baris ke-1 dan kolom ke1 (pojok kiri atas). 3.7 Baca ADC Syntax unsigned char read_adc(unsigned char adc_input); Fungsi Membaca nilai tegangan pada sensor. adc_input merupakan nomor kanal ADC. Nilai yang valid adalah 4 sampai dengan 7. Contoh read_adc(4); akan membaca nilai tegangan sensor paling kiri. read_adc(5); akan membaca nilai tegangan sensor ke-2 dari kiri. read_adc(6); akan membaca nilai tegangan sensor ke-3 dari kiri. read_adc(7); akan membaca nilai tegangan sensor paling kanan. 3. Inisialisasi DT-ROBOT LINE FOLLOWER Syntax void initmain(void); Fungsi Menginisialisasi seluruh port I/O dan peripheral DT-ROBOT LINE FOLLOWER termasuk LCD. Panggil prosedur ini untuk melakukan proses inisialisasi DT-ROBOT LINE FOLLOWER dan cukup dilakukan 1 kali di awal program. Contoh initlmain(); 3. Kendali Motor Kiri Syntax void motorkiri(unsigned char arah,unsigned int speed); Fungsi Mengatur arah putaran dan kecepatan motor kiri. arah dapat berisi nilai 0 untuk maju, nilai 1 untuk mundur, atau nilai 2 untuk stop. speed merupakan kecepatan putaran motor (nilai PWM). Nilai yang valid adalah 0 sampai dengan 1023. Makin besar nilai speed maka makin cepat putaran motor. 11

Contoh motorkiri(0,500); akan memerintahkan motor kiri agar berputar maju dengan nilai PWM 500. 3.10 Kendali Motor Kanan Syntax void motorkanan(unsigned char arah,unsigned int speed); Fungsi Mengatur arah putaran dan kecepatan motor kanan. arah dapat berisi nilai 0 untuk maju, nilai 1 untuk mundur, atau nilai 2 untuk stop. speed merupakan kecepatan putaran motor (nilai PWM). Nilai yang valid adalah 0 sampai dengan 1023. Makin besar nilai speed maka makin cepat putaran motor. Contoh motorkanan(2,0); akan memerintahkan motor kanan agar berhenti. 4. PERANGKAT KERAS DT-ROBOT LINE FOLLOWER 4.1. TATA LETAK KOMPONEN DT-ROBOT LINE FOLLOWER 12

4.2. FUNGSI KONEKTOR DAN KOMPONEN Terminal biru J7 berfungsi sebagai konektor untuk catu daya. Pin Nama 1 GND 2 Fungsi Titik referensi untuk catu daya input 7,2-VDC Terhubung ke catu daya untuk input (7,2 Volt) Konektor RJ11 UART RS232 (J3) berfungsi sebagai konektor untuk antarmuka UART RS-232. Pin Nama Fungsi 1 NC 2 SGND Titik referensi 3 TX Output serial FOLLOWER 4 RX Input serial level RS-232 ke DT-ROBOT LINE FOLLOWER Tidak terhubung kemana-mana level 13 RS-232 dari DT-ROBOT LINE

Header ISP HEADER (J1) berfungsi sebagai konektor untuk pemrograman ISP. Pin Nama 1 MOSI Terhubung ke pin MOSI mikrokontroler 2 VCC Output tegangan 5 volt dari DT-ROBOT LINE FOLLOWER 3 NC Tidak terhubung kemana-mana 5 Fungsi ISP_RST Terhubung ke rangkain RESET mikrokontroler 7 SCK Terhubung ke pin SCK mikrokontroler MISO Terhubung ke pin MISO mikrokontroler 4,6,,10 GND Titik referensi Konektor SENSOR PORT (J4) berfungsi sebagai konektor ke modul sensor. Pin Nama Fungsi 1 SI3 Input terhubung pada ADC internal mikrokontroler kanal 7 2 SI2 Input terhubung pada ADC internal mikrokontroler kanal 6 3 SI1 Input terhubung pada ADC internal mikrokontroler kanal 5 4 SI0 Input terhubung pada ADC internal mikrokontroler kanal 4 5 SEN Output untuk menyalakan atau mematikan LED pada modul sensor 6 NC Tidak terhubung kemana-mana 7 VCC Output tegangan 5 volt dari DT-ROBOT LINE FOLLOWER PGND Titik referensi Konektor M1 (J5) berfungsi sebagai konektor ke motor kiri. Pin Nama Fungsi 1 M11 Output ke motor kiri kaki ke-1 2 M12 Output ke motor kiri kaki ke-2 Konektor M2 (J6) berfungsi sebagai konektor ke motor kanan. Pin Nama Fungsi 1 M21 Output ke motor kanan kaki ke-1 2 M22 Output ke motor kanan kaki ke-2 Saklar geser S4 berfungsi sebagai saklar ON/OFF dengan LED PWR IND (D13) sebagai indikatornya. VR LCD CONTRAST (R5) berfungsi untuk mengatur kontras LCD. VR AIN0 ADJ (R6) terhubung ke AIN0. VR ini dapat digunakan untuk Analog Comparator Multiplexed Input. Tactile switch RESET (S1) terhubung ke rangkaian reset. Tactile switch TS1 (S2) terhubung ke PortD.7, dapat difungsikan sebagai input. Tactile switch TS2 (S3) terhubung ke PortB.5, dapat difungsikan sebagai input. Koneksi LCD dan motor driver dapat dilihat pada lampiran skematik. 14

5. PROSEDUR PENGUJIAN 1. Hubungkan catu daya ke terminal biru J7. 2. Nyalakan DT-ROBOT LINE FOLLOWER menggunakan saklar ON/OFF yang tersedia. 3. Pada LCD akan tampil Menu Tracking yang ditandai dengan tulisan "READY" pada baris bawah dan kombinasi digital hasil pembacaan sensor pada baris atas. 4. Tekan Tombol TS1 sehingga DT-ROBOT LINE FOLLOWER akan mulai melakukan line-following (motor kanan dan/atau kiri akan berputar). 5. Tekan Tombol TS2 untuk kembali ke Menu Tracking. 6. Tekan Tombol TS2 selama 2 detik. 7. DT-ROBOT LINE FOLLOWER akan masuk ke posisi Menu Raw Data dan pada LCD akan tampil nilai hasil pembacaan sensor.. Letakkan sensor di atas permukaan terang atau permukaan gelap. Nilai sensor akan berubah sesuai dengan tingkat kecerahan permukaan.. Hubungkan DT-ROBOT LINE FOLLOWER dan PC menggunakan kabel serial yang disediakan. 10. Jalankan software DT-ROBOT-LINE-FOLLOWER-GUI. 11. Atur konfigurasi Serial Port yang digunakan melalui tombol COM Setting. 12. Tekan tombol Test Connection. 13. Jika koneksi berhasil, maka akan tampil "Connected to DT-ROBOT" pada bagian Connection Status. Terima Kasih atas kepercayaan Anda menggunakan produk kami, bila ada kesulitan, pertanyaan atau saran mengenai produk ini silahkan menghubungi technical support kami support@innovativeelectronics.com 15

LAMPIRAN A. Skematik DT-ROBOT LINE FOLLOWER 16

B. Penjelasan Bagian-bagian DT-ROBOT LINE FOLLOWER Baut untuk tempat baterai, dilepas lebih dulu saat mengganti bracket (untuk memasang jenis motor berbeda). Baut untuk bracket (di bawah tempat baterai), dilepas saat mengganti bracket (untuk memasang jenis motor berbeda). Baut untuk clamp, digunakan saat memasang motor berjenis metal gear. Baut untuk LCD, dilepas lebih dulu saat mengganti spacer (untuk memasang jenis motor berbeda). Baut untuk castor (atas), dilepas saat mengganti spacer (untuk memasang jenis motor berbeda). Baut untuk castor (bawah), dilepas saat mengganti spacer. Baut dan konektor putih untuk sensor (line tracking), dilepas saat mengganti sensor. 17