DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan...

17
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.

Transcript of DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan...

Page 1: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

DT-ROBOTLine Follower

Trademarks & CopyrightAT, 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.

Page 2: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

Daftar Isi

1 Pendahuluan............................................................................................. 31.1 Spesifikasi DT-ROBOT LINE FOLLOWER............................................... 31.2 Sistem yang Dianjurkan............................................................................ 31.3 Pergerakan DT-ROBOT LINE FOLLOWER............................................ 41.4 Algoritma Line Following.......................................................................... 4

2 Mengoperasikan DT-ROBOT LINE FOLLOWER......................................... 52.1 Program Default Tester............................................................................. 52.2 DT-ROBOT LINE FOLLOWER GUI........................................................... 72.2.1 COM Setting (A)......................................................................................... 82.2.2 Connection Status (B)................................................................................. 82.2.3 Test Connection (C).................................................................................... 82.2.4 Track Mode (D)........................................................................................... 82.2.5 Raw Data (E)............................................................................................... 82.2.6 Track Threshold (F)..................................................................................... 82.2.7 Digital Data (G)......................................................................................... 82.2.8 Sensor (H).................................................................................................... 82.2.9 Left Motor Action (I)................................................................................... 92.2.10 Left Motor Speed (J)................................................................................. 92.2.11 Right Motor Action (K)............................................................................... 92.2.12 Right Motor Speed (L)............................................................................... 92.2.13 Send Setting to DT-ROBOT (M).............................................................. 92.2.14 DT-ROBOT LINE FOLLOWER Model (N)............................................... 9

3 Rutin Program Line Following.................................................................. 93.1 Inisialisasi LCD............................................................................................. 103.2 Kirim Byte ke LCD...................................................................................... 103.3 Tampilkan Kalimat ke LCD....................................................................... 103.4 Tampilkan Angka Desimal ke LCD.......................................................... 103.5 Tampilkan Angka Biner ke LCD............................................................... 113.6 Atur Posisi Kursor........................................................................................ 113.7 Baca ADC..................................................................................................... 113.8 Inisialisasi DT-ROBOT LINE FOLLOWER................................................ 113.9 Kendali Motor Kiri...................................................................................... 113.10 Kendali Motor Kanan................................................................................ 12

4 Perangkat Keras DT-ROBOT LINE FOLLOWER.......................................... 124.1 Tata Letak Komponen DT-ROBOT LINE FOLLOWER.......................... 124.2 Fungsi Konektor dan Komponen.............................................................. 13

5 Prosedur Pengujian.................................................................................. 15

LampiranA. Skematik DT-ROBOT LINE FOLLOWER................................................. 16B. Penjelasan Bagian-bagian DT-ROBOT LINE FOLLOWER................ 17

2

Page 3: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

1. PENDAHULUANSebuah 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 DT-ROBOT 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 FOLLOWERSpesifikasi DT-ROBOT LINE FOLLOWER adalah sebagai berikut:• Sumber catu daya menggunakan 6 x batere AA (@1,2 – 1,5 VDC).• Berbasis ATmega168.• Menggunakan IC motor driver SN754410 dengan konfigurasi dual full H-

Bridge 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 8 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 DIANJURKANSistem 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

Page 4: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

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 FOLLOWERDT-ROBOT LINE FOLLOWER memiliki 2 buah roda yang masing-masing digerakkan oleh sebuah motor (Differential Drive). Oleh karena itu terdapat paling tidak terdapat 9 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

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

1.4. ALGORITMA LINE FOLLOWINGBila 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

Page 5: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

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 TESTERDT-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.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.

5

LCD

ON/OFFSwitch

TerminalBaterai

Tombol TS1

TempatBaterai

Tombol TS2

RS-232

ISPPort

Tombol Reset

Page 6: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

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.

Jika Tombol TS1 ditekan, maka DT-ROBOT LINE FOLLOWER akan mulai melakukan line following dan pada LCD akan tampil tulisan seperti berikut ini.

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.

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.

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

XXXX READY!

TRACKING START!

XXXX Th = YYY

SSS SSSSSS SSS

Page 7: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

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.

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 GUIUntuk 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-FOLLOWER-GUI”. 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.

7

AB

C

D

E

F

G

H

I

J

K

LM

N

Black Track

Page 8: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

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• 8 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 DT-ROBOT” 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 DT-ROBOT 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.8 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

8

Page 9: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

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.9 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 DT-ROBOT LINE FOLLOWER. Parameter-parameter di atas akan dikirim ke DT-ROBOT 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 DT-ROBOT LINE FOLLOWER terhadap jalur berdasarkan kombinasi nilai digital yang dipilih pada bagian Sensor.

3. RUTIN PROGRAM LINE FOLLOWINGUntuk 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.

9

Page 10: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

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 fungsi-fungsi 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 LCDSyntax : void initlcd(void);Fungsi : menginisialisasi LCD.Ket. :

➢ 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 LCDSyntax : void putlcd(unsigned char moda, unsigned char comm);Fungsi : mengirimkan 1 byte Command atau Data ke LCD.Ket. :

➢ 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 atau 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 LCDSyntax : void lcd_putsf(flash unsigned char *str);Fungsi : menampilkan string/kalimat di LCD pada posisi kursor sekarang.Ket. :

➢ *str berisi alamat awal kalimat pada memori flash.Contoh : lcd_putsf("START!"); akan menuliskan kalimat "START!" di LCD.

3.4 Tampilkan Angka Desimal ke LCDSyntax : void lcd_putInt(unsigned int value,unsigned char dispNum);Fungsi : menampilkan nilai yang dimasukkan dalam bentuk bilangan desimal

ke LCD pada posisi kursor sekarang.Ket. :

➢ 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

Page 11: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

3.5 Tampilkan Angka Biner ke LCDSyntax : void lcd_putBin(unsigned char value,unsigned char dispNum);Fungsi : menampilkan nilai yang dimasukkan dalam bentuk bilangan biner

ke LCD pada posisi kursor sekarang.Ket. :

➢ Nilai value merupakan nilai yang ingin ditampilkan.➢ Nilai dispNum berisi jumlah karakter yang ingin ditampilkan.➢ Nilai dispNum yang valid adalah 1 sampai dengan 8.

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 KursorSyntax : void locate(unsigned char lines, unsigned char cols);Fungsi : Mengatur posisi kursor agar berada pada posisi baris dan kolom

tertentu.Ket. :

➢ Nilai lines merupakan posisi baris. Nilai yang valid adalah 1 sampai dengan 2 untuk LCD karakter 8x2.

➢ Nilai cols merupakan posisi kolom. Nilai yang valid adalah 1 sampai dengan 8 untuk LCD karakter 8x2.

Contoh : locate(1,1); akan meletakkan kursor pada baris ke-1 dan kolom ke-1 (pojok kiri atas).

3.7 Baca ADCSyntax : unsigned char read_adc(unsigned char adc_input);Fungsi : Membaca nilai tegangan pada sensor.Ket. :

➢ 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.8 Inisialisasi DT-ROBOT LINE FOLLOWERSyntax : void initMain(void);Fungsi : Menginisialisasi seluruh port I/O dan peripheral DT-ROBOT LINE

FOLLOWER termasuk LCD.Ket. :

➢ Panggil prosedur ini untuk melakukan proses inisialisasi DT-ROBOT LINE FOLLOWER dan cukup dilakukan 1 kali di awal program.

Contoh : initlMain();

3.9 Kendali Motor KiriSyntax : void motorKiri(unsigned char arah,unsigned int speed);Fungsi : Mengatur arah putaran dan kecepatan motor kiri.Ket. :

➢ 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

Page 12: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

Contoh : motorKiri(0,500); akan memerintahkan motor kiri agar berputar maju dengan nilai PWM 500.

3.10 Kendali Motor KananSyntax : void motorKanan(unsigned char arah,unsigned int speed);Fungsi : Mengatur arah putaran dan kecepatan motor kanan.Ket. :

➢ 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

Page 13: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

4.2. FUNGSI KONEKTOR DAN KOMPONENTerminal biru J7 berfungsi sebagai konektor untuk catu daya.

Pin Nama Fungsi

1 GND Titik referensi untuk catu daya input

2 7,2-9VDC Terhubung ke catu daya untuk input (7,2 – 9 Volt)

Konektor RJ11 UART RS232 (J3) berfungsi sebagai konektor untuk antarmuka UART RS-232.

Pin Nama Fungsi

1 NC Tidak terhubung kemana-mana

2 SGND Titik referensi

3 TX Output serial level RS-232 dari DT-ROBOT LINE FOLLOWER

4 RX Input serial level RS-232 ke DT-ROBOT LINE FOLLOWER

13

Page 14: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

Header ISP HEADER (J1) berfungsi sebagai konektor untuk pemrograman ISP.

Pin Nama Fungsi

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 ISP_RST Terhubung ke rangkaian RESET mikrokontroler

7 SCK Terhubung ke pin SCK mikrokontroler

9 MISO Terhubung ke pin MISO mikrokontroler

4,6,8,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

8 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

Page 15: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

5. PROSEDUR PENGUJIAN1. Hubungkan catu daya ke terminal biru J7 (dari baterai ataupun dari

sumber lain).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.8. Letakkan sensor di atas permukaan terang atau permukaan gelap. Nilai

sensor akan berubah sesuai dengan tingkat kecerahan permukaan.9. 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 :

[email protected]

15

Page 16: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

LAMPIRAN A. Skematik DT-ROBOT LINE FOLLOWER

16

Page 17: DT-ROBOT - innovativeelectronics.com · mempelajari pemrograman robot line follower dengan bantuan kerangka program yang ada. Para pengguna dapat bereksperimen dengan algoritma line

B. Penjelasan Bagian-bagian DT-ROBOT LINE FOLLOWER

17

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.