Tampilan GUI MATLAB Penjelasan Program MATLAB

yang terdeteksi sebanyak 1 dan hasil penjumlahan tersebut ditampilkan pada “edit4” lalu mengirimkan karakter „d‟ secara serial. Apabila data tidak berada didalam range bok 1, 2, 3 dan 4 maka akan juga tampil pada “edit6” benda yang terdeteksi yaitu bok tidak sesuai, kemudian menjumlahkan nilai bok tidak sesuai yang terdeteksi sebanyak 1 dan hasil penjumlahan tersebut ditampilkan pada “edit5” lalu mengirimkan karakter „e‟ secara serial.

4.2.3. Penjelasan Program AVR

Dijelaskan masing-masing fungsi pada listing program yang menggunakan software CodeVision AVR diantaranya program pengendali sensor photodioda menggunakan fasilitas ADC Analog to Digital Converter , program untuk komunikasi serial menggunakan USART Universal Synchronous Asynchronous Receiver Transmiter .

4.2.3.1. Pengendali Sensor Photodioda

Program pengendali sensor photodioda menggunakan fasilitas yang dimiliki oleh mikrokontroler ATmega32 yaitu ADC Analog to Digital Converter . Fungsinya yaitu untuk mengubah tegangan analog menjadi tegangan digital. Tegangan digital tersebut akan digunakan untuk mengontrol conveyor untuk membawa bok. Pada listing program yang ditunjukan gambar 4.17, digunakan read_adc0 yang artinya menggunakan PORTA.0 sebagai PORT masukan untuk mengubah tegangan analog menjadi tegangan digital. Pada bagian sensor= read_adc02 maksud dari pembagian 2 yaitu agar nilai desimal ADC maksimal yaitu 1023 dibagi 2 yaitu 511. Sehingga apabila tegangan masukan 0 Volt sampai 5 Volt, akan diubah melalui ADC menjadi 0 desimal hingga 511 desimal. Listing program dapat dilihat pada gambar 4.18. Gambar 4.18. Listing Program Pengendali Conveyor Pada bagian listing program gambar 4.18, fungsinya yaitu untuk mengendalikan motor penggerak conveyor yang dikontrol menggunakan PORTB.0. Terdapat nilai 200 pada bagian “if sensor=200” ini dimaksudkan untuk membuat PORTB.0 bernilai “0” jika nilai sensor lebih besar sama dengan dari 200 desimal ADC. Hal ini berarti menyebabkan motor pada conveyor berhenti berputar. Jika kondisi sensor kurang dari 200, maka motor conveyor akan terus berputar. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

4.2.3.2. Pengendali Komunikasi USART

Pada bagian ini berfungsi sebagai komunikasi serial USART untuk menghubungkan antara mikrokontroler ATmega32 dengan laptop. Baudrate yang digunakan yaitu 9600 bps. Fungsi “ getchar ” yaitu untuk menerima karakter dari laptop ke mikrokontroler. Sedangkan fungsi “ putchar ” yaitu untuk mengirimkan suatu karakter kepada laptop. Listing program dapat dilihat pada gambar 4.19. Gambar 4.19. Listing Program Komunikasi USART

4.2.3.3. Pengendali Motor DC

Program pengendali motor menggunakan interrupt sebagai pembangkit pulsa untuk menghitung kotak yang lewat. Listing program pengendali motor dapat dilihat pada gambar 4.20. Gambar 4.20. Listing Program Pengendali Putaran Motor PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI