PRAKTIKUM III Robot Line Follower Sederhana

dokumen-dokumen yang mirip
BAB III METODE PENELITIAN

BAB III METODOLOGI PENELITIAN

BAB III PERANCANGAN DAN REALISASI ALAT

PEMBUATAN RANGKAIAN LAMPU OTOMATIS DENGAN KONTROL JAM MENGGUNAKAN MIKROKONTROLLER ATMEGA 8535

BAB III PERANCANGAN DAN REALISASI SISTEM

BAB III PERANCANGAN SISTEM. dari pembuatan alat yang meliputi perancangan hardware dan perancangan

BAB IV HASIL DAN UJI COBA

BAB IV HASIL DAN UJI COBA

BAB 3 PERANCANGAN ALAT. Rangkaian Catu daya (Power Supply Adaptor) ini terdiri dari satu keluaran, yaitu 5

MIKROKONTROLER ATMEGA BERBASIS CODEVISION AVR (ADC DAN APLIKASI TERMOMETER) dins D E P O K I N S T R U M E N T S

Sistem Alarm dan Informasi Suara pada Indikator Volume Bahan Bakar Sepeda Motor

MODUL PELATIHAN MIKROKONTROLLER UNTUK PEMULA DI SMK N I BANTUL OLEH: TIM PENGABDIAN MASYARAKAT JURUSAN TEKNIK ELEKTRO

BAB III METODE PENELITIAN. trafo step down untuk menyuplay rangkaian. Timer dan suhu ditentukan

BAB III PERANCANGAN ALAT

PENGEMBANGAN MODUL PRAKTIKUM MIKROKONTROLER (AVR) MENGGUNAKAN PERANGKAT LUNAK PROTEUS PROFESSIONAL v7.5 SP3

BAB III METODE PENELITIAN

BAB IV HASIL DAN UJI COBA

BAB III RANCANG BANGUN ALAT

A. MIKROKONTROLLER Sebenarnya apakah yang disebut dengan mikrokontroler? Sebuah kontroler digunakan untuk mengontrol suatu proses atau aspek-aspek

BAB III METODE PENELITIAN. down untuk memberikan tegangan ke seluruh rangkaian. Timer ditentukan dengan

BAB 4 HASIL DAN PEMBAHASAN

Standar Operasional Prosedur Alat

III. METODE PENELITIAN. Penelitian ini dilaksanakan di Laboratorium Instrumentasi jurusan Fisika

OHMMETER DIGITAL BERBASIS MICROCONTROLLER

BAB IV HASIL DAN UJI COBA

RANCANG BANGUN MODUL ALAT UKUR MEDICAL CHECK-UP BERBASIS MIKROKONTROLER ATMEGA8535

Tabel Data Pengujian 5x Perubahan Posisi. Kanan (V) Kiri (V)

BAB III METODE PENELITIAN

Listing Program. // Declare your global variables here

PERANCANGAN ALAT PEMBERI MAKAN IKAN OTOMATIS DAN PEMANTAU KEADAAN AKUARIUM BERBASIS MIKROKONTROLER ATMEGA8535

BAB IV PENGUJIAN ALAT DAN ANALISA

BAB IV HASIL DAN UJICOBA

PERCOBAAN I PENGENALAN CODEVISION AVR

JOBSHEET II ANTARMUKA MIKROKONTROLER DENGAN TOGGLE SWITCH

Kajian Pustaka. Spesifikasi - Krisbow KW Fitur - Krisbow KW06-290

LAMPIRAN. Lay Out Minimum Sistem dengan ATMega8

MODUL V: Timer dan Counter

Gambar 5.1 Modul LCD M1632. LCD ini memiliki 16 kaki, sebagaimana ditunjukkan dalam Tabel 6.1.

Pengenalan CodeVisionAVR

BAB IV HASIL DAN UJI COBA

BAB IV PENGUJIAN ALAT DAN ANALISA

ABSTRAK. Kata kunci: Sensor LM35,ATmega 8535

I. Pendahuluan. II. Tujuan. III. Gambaran Disain. MODUL 7 Monitoring Suhu dan Cahaya ke PC

PELATIHAN: Pemrograman Mikrokontroler Tipe AVR bagi Guru-guru SMK

BAB III METODOLOGI PENELITIAN

Tata letak konektor DT-AVR ATMEGA168 BMS adalah sebagai berikut: Persiapan hardware DT-AVR ATMEGA168 BMS adalah sebagai berikut:

Perancangan PENGKODEAN NRZ-L DAN MANCHESTER BERBASIS MIKROKONTROLER ATMEGA8535. SKRIPSI (Resume)

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

Membuat Project dengan CodeVisionAVR.

Laboratorium MIKROKONTROLER 1 AVR ATmega8535

BAB IV HASIL DAN UJI COBA

Jurnal Rancang Bangun Prototype Palang Parkir Menggunakan Mikrokontroler ATmega 8535

BAB III ANALISIS DAN PERANCANGAN

BAB IV HASIL DAN UJICOBA

JOBSHEET I ANTARMUKA MIKROKONTROLER DENGAN LED

BAB IV HASIL DAN PEMBAHASAN

LAMPIRAN. A. Pembuatan Minimun system dan Penanaman Program 1. Rangkaian Minimum System yang telah dilarutkan, di bor dan dipasang komponen

Langkah-langkah pemrograman: 1. Pilih File >> New:

BAB IV HASIL DAN UJI COBA

BAB III PERANCANGAN DAN PEMBUATAN SISTEM. perangkat keras maupun perangkat lunak yang meliputi:

BAB III METODE PENELITIAN

BAB 3 PERANCANGAN ALAT. Sensor Utrasonik. Relay. Relay

STIKOM SURABAYA BAB IV PEMBAHASAN. 4.1 Perangkat Keras. Informasi waktu yang akan ditunjukkan oleh jarum dan motor power

Petunjuk Dasar Pemrograman Mikrokontroller dengan Module. IW-16 USB Mikrokontroller AVR ATmega 16

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

JEMBATAN TIMBANG UNTUK PENGGUNA KURSI RODA

BAB IV METODE PENELITIAN. serta menghubungkan pin mosi, sck, gnd, vcc, miso, serta reset. Lalu di

BAB III PERANCANGAN SISTEM

BAB 3 PERANCANGAN SISTEM

Petunjuk Dasar Pemrograman Mikrokontroller dengan Module IW-32A USB Miktokontroller AVR ATmega32A

BAB IV PENGUJIAN SISTEM

Gambar 3.1 Blok Diagram Timbangan Bayi

BAB III METODOLOGI PENELITIAN. Gambar blok diagram dari sistem kerja alat dapat dilihat pada Gambar 3.1

PERENCANAAN DAN PEMBUATAN ALAT PENGISI BUBUK KOPI

BAB 3 PERANCANGAN SISTEM

Rancang Bangun Alat Ukur dan Indikator Kadar Air Gabah Siap Giling Berbasis Mikrokontroler dengan Sensor Fotodioda

BAB IV METODE KERJA PRAKTEK

BAB III METODOLOGI PENELITIAN

Gambar 4.2 Rangkaian keypad dan LED

Membuat Robot Tidak Susah. Hendawan Soebhakti Dosen Teknik Elektro Politeknik Batam Portal : hendawan.wordpress.

BAB III PERANCANGAN DAN PEMODELAN

POLITEKNIK CALTEX RIAU

BAB III ANALISIS DAN PERANCANGAN

BAB III PERANCANGAN SISTEM

mendinginkan ruangan, dan kipas dc 2 berfungsi untuk membuang udara dari dalam ruangan penyimpanan. Untuk mengetahui perubahan suhu yang ada dalam rua

Sistem Pengaman Brankas Dengan Password Menggunakan Touch Sensor Berbasis ATMEGA 32

BAB III ANALISIS DAN PERANCANGAN

BAB III METODOLOGI PENELITIAN. dengan suhu dan timer berbasis mikrokontroler ATMega8535, dapat

BAB IV PERANCANGAN DAN PENGUJIAN ALAT. Perancangan perangkat keras otomasi alat pengering kerupuk berbasis

JEMURAN PAKAIAN OTOMATIS DENGAN MENGGUNAKAN. SENSOR CAHAYA (LDR) dan SENSOR HUJAN. Naskah Publikasi

BAB III PERANCANGAN DAN REALISASI SISTEM

REFS0-1 (Reference Selection Bits) REFS0-1 adalah bit-bit pengatur mode tegangan referensi ADC.

Teknik-Teknik Penyesuaian Sensor

BAB IV PENGUJIAN SISTEM. sesuai yang diharapkan. Terdapat beberapa pengujian sistem, antara lain:

BAB IV HASIL DAN UJI COBA

ISSN ALAT SOLAR TRACKER BERBASIS MIKROKONTROLER 8 BIT ATMega8535. Oleh. (I Wayan Sutaya)

BAB V KESIMPULAN DAN SARAN. melakukan analisa terhadap rancang bangun monitoring volume air mineral

BAB III METODOLOGI PENELITIAN

LAMPIRAN. #include <mega16.h> //menambahkan library atmega16 #include <delay.h> //menambahkan library delay #define ADC_VREF_TYPE 0x40

LAMPIRAN A. Gambar A. Layout alat tongkat tunanetra. Ubiversitas Sumatera Utara

Transkripsi:

PRAKTIKUM III Robot Line Follower Sederhana A. Tujuan 1. Mahasiswa dapat mengkombinasikan antara pengontrolan motor dengan PWM, dengan sensor proximity dengan ADC. 2. Mahasiswa dapat membuat program robot line follower sederhana. 3. Mahasiswa dapat mensimulasikan pada program Proteus, antara pengontrolan motor dengan PWM, dengan sensor proximity dengan ADC. 4. Mahasiswa mampu merangkai robot line follower sederhana. B. Teori Dasar Robot Line Follower adalah robot yang dapat bergerak mengikuti garis secara otomatis tanpa ada remot yang mengaturnya. Prinsip dasarnya, sama seperti manusia, mata digunakan untuk melihat, kaki/roda digunakan untuk berjalan, dan otak digunakan untuk berpikir. 3 Komponen utama pada setiap robot : mata, kaki, dan otak. Pada percobaan sebelumnya kita telah membuat program kontrol motor dengan PWM, lalu pembacaan sensor proximity dengan ADC. Pada praktikum ini, akan dikombinasikan kedua metode tersebut sehingga dapat menghasilkan robot line follower sederhana. C. Peralatan yang Dibutuhkan 1. Alat dan Bahan a. Sistem minimum Atmega 8535 b. Downloader USBAsp c. Sensor proximity (8 buah) d. Modul LCD e. Motor DC (2 buah) f. Driver motor L293D g. Kabel jumper secukupnya h. Kabel USB i. Catu Daya 2. Software a. CodeVision AVR b. Proteus ISIS c. Progisp 1.72

D. Gambar Rangkaian RV2 RV3 RV4 RV5 RV6 RV7 RV8 RV9 LCD1 LM016L 1 2 3 4 5 6 7 8 U1 PB0/T0/XCK PB1/T1 PB2/AIN0/INT2 PB3/AIN1/OC0 PB4/SS PB5/MOSI PB6/MISO PB7/SCK PA0/ADC0 PA1/ADC1 PA2/ADC2 PA3/ADC3 PA4/ADC4 PA5/ADC5 PA6/ADC6 PA7/ADC7 40 39 38 37 36 35 34 33 RV1 1K VSS VDD VEE 1 2 3 RS RW E 4 5 6 D0 D1 D2 D3 D4 D5 D6 D7 7 8 9 10 11 12 13 14 IN1 IN2 IN3 IN4 EN2 EN1 14 15 16 17 18 19 20 21 PD0/RXD PD1/TXD PD2/INT0 PD3/INT1 PD4/OC1B PD5/OC1A PD6/ICP1 PD7/OC2 PC0/SCL PC1/SDA PC2 PC3 PC4 PC5 PC6/TOSC1 PC7/TOSC2 22 23 24 25 26 27 28 29 +5V +12V 13 12 9 XTAL1 XTAL2 RESET ATMEGA8535 AREF AVCC 32 30 IN1 IN2 EN1 2 7 1 IN1 IN2 EN1 16 VSS 8 U2 3 VS OUT1 6 OUT2 +88.8 EN2 IN3 IN4 9 10 15 EN2 IN3 IN4 GND OUT3 GND OUT4 11 14 D8 D7 D6 D5 D4 D3 D2 D1 L293D +88.8 R8 R7 R6 R5 R4 R3 R2 R1 Gambar 3.1 Rangkaian robot line follower sederhana E. Langkah Kerja Adapun langkah kerja pada praktikum ini adalah sebagai berikut: 1. Merangkai peralatan sesuai dengan rangkaian percobaan 2. Menjalankan program Codevision AVR 3. Pilih menu File -> New dan Buat Project baru Gambar 3.2. Window untuk membuat Project baru 4. Pilih tipe chip AVR AT90,Attiny,ATmega,FPSLIC karena mikrokontroler yang akan digunakan adalah ATmega8535.

Gambar 3.3. Window untuk memilih tipe Chip 5. Pada window yang muncul, pilih Tab Chip. Konfigurasi jenis chip yang akan digunakan yaitu ATmega8535, dan Clock 12Mhz. Gambar 3.4. Konfigurasi Chip pada CodevisionAVR 6. Pilih Tab Ports, lalu PORTD. Atur agar Data Direction menjadi output. Begitupun dengan PORTB diatur agar menjadi Output.

Gambar 3.5. Konfigurasi Port pada CodevisionAVR 7. Pilih Tab Timer. Lalu pilih Timer1. Atur seperti pada gambar beikut. Gambar 3.6. Konfigurasi Port pada CodevisionAVR 8. Pilih Tab Alphanumeric LCD, lalu ganti semua kode pada LCD Module AVR menjadi PORTC. Pada bagian Characters/line set menjadi 8. Gambar 3.7. Konfigurasi Port pada CodevisionAVR 9. Pilih Tab ADC, lalu centang ADC Enabled dan use 8 bit. Sesuiakan seperti gambar

Gambar 3.8. Konfigurasi Port pada CodevisionAVR 10. Klik tombol Generate program, save and exit untuk menghasilkan dan menyimpan konfigurasi program. Simpan dengan nama Percobaan 2. Gambar 3.9. Tombol untuk menyimpan project pada window CodeWizardAVR 11. Pada file Percobaan 3.c, ketikkan listing program berikut ini: #include <mega8535.h> #include <delay.h> #include <stdio.h> #include <stdlib.h> #include <alcd.h> #define IN1 PORTD.0 #define IN2 PORTD.1 #define IN3 PORTD.2 #define IN4 PORTD.3 #define EN1 OCR1A #define EN2 OCR1B #asm.equ lcd_port = 0x15; #endasm #define ADC_VREF_TYPE 0x20 unsigned char read_adc(unsigned char adc_input) { ADMUX=adc_input (ADC_VREF_TYPE & 0xff); delay_us(10); ADCSRA =0x40; while ((ADCSRA & 0x10)==0); ADCSRA =0x10; return ADCH; int P1,P2,P3,P4,P5,P6,P7,P8; unsigned char lcd[15]; void lcd_sensor(){

lcd_gotoxy(0,0); sprintf(lcd,"%x",p1); lcd_gotoxy(3,0); sprintf(lcd,"%x",p2); lcd_gotoxy(6,0); sprintf(lcd,"%x",p3); lcd_gotoxy(9,0); sprintf(lcd,"%x",p4); lcd_gotoxy(0,1); sprintf(lcd,"%x",p5); lcd_gotoxy(3,1); sprintf(lcd,"%x",p6); lcd_gotoxy(6,1); sprintf(lcd,"%x",p7); lcd_gotoxy(9,1); sprintf(lcd,"%x",p8); if (P1 >= 180){ PORTB.0 = 1; else{ PORTB.0 = 0; if (P2 >= 180){ PORTB.1 = 1; else{ PORTB.1 = 0; if (P3 >= 180){ PORTB.2 = 1; else{ PORTB.2 = 0; if (P4 >= 180){ PORTB.3 = 1; else{ PORTB.3 = 0; if (P5 >= 180){ PORTB.4 = 1; else{ PORTB.4 = 0; if (P6 >= 180){

PORTB.5 = 1; else{ PORTB.5 = 0; if (P7 >= 180){ PORTB.6 = 1; else{ PORTB.6 = 0; if (P8 >= 180){ PORTB.7 = 1; else{ PORTB.7 = 0; void maju(){ IN1 = 1;IN2=0;IN3=1;IN4=0; EN1 = 100; EN2 = 100; void manuver_kanan(){ IN1 = 1; IN2 = 0; IN3 = 0; IN4 = 1; EN1 = 100; EN2 = 100; void manuver_kiri(){ IN1 = 0; IN2 = 1; IN3 = 1; IN4 = 0; EN1 = 100; EN2 = 100; void belok_kanan(){ IN1 = 1; IN2 = 0; IN3 = 0; IN4 = 0; EN1 = 100; EN2 = 100; void belok_kiri(){ IN1 = 0; IN2 = 0; IN3 = 1; IN4 = 0; EN1 = 100; EN2 = 100; void idle(){ IN1 = 0; IN2 = 0; IN3 = 0; IN4 = 0; EN1 = 100; EN2 = 100; void main(void) { DDRB=0xFF; DDRD=0x3F; TCCR1A=0xA1; TCCR1B=0x0D; ADMUX=ADC_VREF_TYPE & 0xff; ADCSRA=0x84; SFIOR&=0xEF; lcd_init(16); while (1) { P1 = read_adc(0);p2 = read_adc(1);p3 = read_adc(2);p4 = read_adc(3); P5 = read_adc(4);p6 = read_adc(5);p7 = read_adc(6);p8 = read_adc(7); lcd_clear(); lcd_sensor(); delay_ms(50); if((portb == 0b00000001) (PORTB == 0b00000011)){ manuver_kanan(); EN1 = 200; EN2 = 200;

{ { { lcd_gotoxy(13,1); lcd_puts("->"); else if((portb == 0b00000100) (PORTB == 0b00000110) (PORTB == 0b00000111)) belok_kanan(); EN1 = 250; EN2 = 200; lcd_gotoxy(13,1); lcd_puts("->>"); else if((portb == 0b00011000) (PORTB == 0b00111000) (PORTB == 0b00011100)) maju(); EN1 = 250; EN2 = 250; lcd_gotoxy(13,1); lcd_puts("^"); else if((portb == 0b00100000) (PORTB == 0b01100000) (PORTB == 0b11100000)) belok_kiri(); EN1 = 200; EN2 = 250; lcd_gotoxy(13,1); lcd_puts("<<-"); else if((portb == 0b10000000) (PORTB == 0b11000000)){ manuver_kiri(); EN1 = 200; EN2 = 200; lcd_gotoxy(13,1); lcd_puts("<-"); else { idle(); EN1 = 0; EN2 = 0; lcd_gotoxy(13,1); lcd_puts("-"); 12. Setelah program selesai. Klik menu Project, lalu pilih Build All. Yang juga secara otomatis akan menghasilkan file hex dari program. File hex dapat ditemukan dalam folder hex

Gambar 3.10. Menu untuk meng-compile program pada CodevisionAVR 13. Untuk simulasi buka program Proteus, lalu rangkai sesuai petunjuk percobaan. Klik kanan pada Atmega8535 lalu pilih Edit Properties. Gambar 3.11. Mengubah properties pada Atmega8535 pada software Proteus 14. Pada bagian Program file ganti menjadi URL yang menunjuk file hex yang dihasilkan Codevision AVR. Klik Ok.

Gambar 3.12. Bagian program file tempat mengisi URL file HEX 15. Pilih menu Debug lalu klik Start/Restart Debugging Gambar 3.13. Memulai simulasi dengan menu Debug -> Start 16. Perhatikan hasil program pada rangkaian Proteus 17. Untuk rilnya, rangkai ATmega8535 dengan LCD, motor DC, Driver motor L293D, dan sensor proximity. 18. Buka program ProgISP. Lalu hubungkan USBASp ke komputer melalui kabel USB. Pada ProgISP, ikon PRG ISP menandakan bahwa USBAsp siap digunakan. Gambar 3.14. Notifikasi bahwa USBAsp siap dipakai 19. Atur value Fusebit menjadi 0xC9EF

Gambar 3.15. Pengaturan Fusebit pada ProgISP 20. Setelah mengatur Fusebit, pilih menu File -> Load Flash. Untuk meload file hex yang dihasilkan dari program CodeVisionAVR. Gambar 3.16. Menu untuk memuat file HEX pada ProgISP 21. Setelah file di load, maka tekan tombol Auto untuk mendownload program ke Sistem minimum. 22. Setelah didownload, hubungkan USBAsp ke Sistem minimum Atmega8535 dengan input tegangan dari catudaya. 23. Amati pergerakan motor yang harus sesuai program yang telah dibuat serta nilai pada LCD jika sensor proximity diarahkan ke keadaan gelap (hitam) maupun terang (putih).

F. Diagram Alir (Flowchart)

G. Hasil Praktikum a. Rangkaian pada Proteus Gambar 3.17. Flowchart program RV2 RV3 RV4 RV5 RV6 RV7 RV8 RV9 LCD1 LM016L 10 10 1 2 3 4 5 6 7 8 U1 PB0/T0/XCK PB1/T1 PB2/AIN0/INT2 PB3/AIN1/OC0 PB4/SS PB5/MOSI PB6/MISO PB7/SCK PA0/ADC0 PA1/ADC1 PA2/ADC2 PA3/ADC3 PA4/ADC4 PA5/ADC5 PA6/ADC6 PA7/ADC7 40 39 38 37 36 35 34 33 RV1 1K VSS VDD VEE 1 2 3 RS RW E 4 5 6 D0 D1 D2 D3 D4 D5 D6 D7 7 8 9 10 11 12 13 14 IN1 IN2 IN3 IN4 EN2 EN1 14 15 16 17 18 19 20 21 PD0/RXD PD1/TXD PD2/INT0 PD3/INT1 PD4/OC1B PD5/OC1A PD6/ICP1 PD7/OC2 PC0/SCL PC1/SDA PC2 PC3 PC4 PC5 PC6/TOSC1 PC7/TOSC2 22 23 24 25 26 27 28 29 +5V +12V 13 12 9 XTAL1 XTAL2 RESET ATMEGA8535 AREF AVCC 32 30 IN1 IN2 EN1 2 7 1 IN1 IN2 EN1 16 VSS 8 U2 3 VS OUT1 6 OUT2 +180 EN2 IN3 IN4 9 10 15 EN2 IN3 IN4 GND OUT3 GND OUT4 11 14 D8 D7 D6 D5 D4 D3 D2 D1 L293D +180 R8 R7 R6 R5 R4 R3 R2 R1 Gambar 3.18. Rangkaian hasil praktikum b. Fisik rangkaian Gambar 3.19. Fisik rangkaian percobaan H. Analisa Percobaan Berdasarkan percobaan yang telah dilakukan, ketika value hasil pembacaan pada PORTB yang mewakili kondisi sensor Proximity, robot dapat mengambil tindakan sesuai dengan instruksi program yang telah diberikan. Tanggapan yang diberikan kurang cepat, hal ini ditimbulkan oleh proses konversi sinyal dari sensor proximity, ke LCD, dan ke driver Motor L293D. I. Kesimpulan Dengan mengkombinasikan antara metode pengontrolan motor DC dengan PWM, dengan metode pembacaan sensor Proximity dengan ADC, maka dapat dibuat sebuah robot line follower sederhana yang memiliki kemampuan untuk mengikuti garis. Pembacaan garis dapat ditingkatkan dengan menggunakan metode PID, yang menghasilkan program robot line follower yang lebih baik dan efisien.