• Tidak ada hasil yang ditemukan

BAB II DASAR TEORI

2.17. Optocoupler

Optocoupler disebut juga optoisolator adalah komponen yang terdiri dari dioda pemancar radiasi sinar inframerah (LED) dan fotodioda atau fototransistor sebagai penerima dalam satu kemasan [14]. Dengan LED pada sisi masukan dan fotodioda pada sisi keluaran.

Perhatikan Gambar 2.25., tegangan sumber V1dan tahanan seri R1menghasilkan arus melalui

LED. Sebagai gantinya, cahaya dari LED mengenai fotodioda, dan ini menyebabkan timbulnya arus balik I2.

Gambar 2.25. Rangkaian optocoupler [14]

Persamaan dari rangkaian optocoupler :

− − = 0 (2.11)

atau

= −

dengan Vo adalah tegangan output dari fotodioda, I2 adalah arus yang mengalir pada fotodioda.

38

BAB III

PERANCANGAN

Sistem ini akan menggunakan kendali jarak jauh dengan memanfaatkan suatu frekuensi bebas 2,4 Ghz untuk pengiriman data. Perancangan sistem tempat sampah berjalan menggunakan sistem komunikasi radio dengan frekuensi 2,4 GHz terdiri dari 2 bagian utama, yaitu: bagian perancangan perangkat keras (rangkaian pengirim, rangkaian penerima, dan line follower) dan bagian perancangan perangkat lunak. Bagian perangkat keras terdiri atas: sensor jalur, sensor berat, sensor ultrasonik, rangkaian pengondisi sinyal, rangkaian komparator, rangkaian driver, mikrokontroler ATmega8535, modul XBee PRO, tombol, dan LCD sebagai penampil informasi yang telah dikirimkan.

Sistem menggunakan sensor ultrasonik sebagai pendeteksi benda yang masuk ke tempat sampah dan sensor berat sebagai pembatas maksimal beban yang dapat dibawa oleh robot. Mikrokontroler memproses hasil keluaran dari sensor yang bekerja dan melanjutkan kepada driver untuk mengatur kecepatan putar motor. Robot akan dikendalikan secara jarak jauh menggunakan jaringan nirkabel. Jika user telah membuang sampah, maka robot akan kembali ke base. Jika berat melebihi batas maksimum, maka robot tidak akan berjalan.

Penelitian ini menggunakan tiga buah mikrokontroler. Mikrokontroler 1 digunakan pada rangkaian XBee pengirim, mikrokontroler 2 digunakan pada rangkaian XBee penerima, dan mikrokontroler 3 digunakan pada robot line follower.

3.1. Diagram Blok

Diagram blok pengendali jarak jauh dalam perancangan ini terdiri dari 2 bagian yaitu modul pemancar dan modul penerima. Diagram blok modul pemancar ditunjukkan pada Gambar 3.1., diagram blok modul penerima ditunjukkan pada Gambar 3.2., dan diagram blok robot line follower ditunjukkan pada Gambar 3.3.

Gambar 3.1. Diagram blok pemancar

Mikrokontroler 1 Modul XBee

Pemancar Tombol 1

Tombol 2

Gambar 3.2. Diagram blok penerima

Gambar 3.3. Diagram blok line follower

Diagram blok modul pemancar terdiri dari tombol, IC mikrokontroler ATmega8535 sebagai IC pengatur pengiriman data, dan modul XBee PRO sebagai pemancar sinyal. Keypad sebagai input untuk menentukan titik pemberhentian, dan output berupa 1 buah LCD sebagai penampil untuk user. Diagram blok modul penerima terdiri dari modul XBee PRO sebagai penerima sinyal, IC mikrokontroler ATmega8535 sebagai pengolah data untuk menentukan titik pemberhentian robot, dan LCD sebagai penampil untuk user.

Modul XBee

Penerima Mikrokontroler 2

Robot Line Follower

Tempat Sampah

Mikrokontroler 3 Sensor

proximity

Sensor ultrasonik

Sensor berat Komparator

Driver

Pengondisi sinyal

Motor DC Mikrokontroler 2

Sistem ini akan bekerja jika mikrokontroler 1 pada modul pemancar menerima data dari tombol dan kemudian mikrokontroler 1 akan megolah data tersebut sebagai input untuk modul XBee PRO. Kemudian modul XBee PRO akan mengirimkan data sesuai data yang dikirim oleh mikrokontroler 1.

Setelah modul pemancar mengirimkan data melalui frekuensi 2,4 Ghz, modul penerima akan menerima data yang dikirim. Data yang telah diterima kemudian akan diolah oleh mikrokontroler 2 sebagai data titik pemberhentian line follower. Line follower yang telah menerima data dari mikrokontroler 2 akan langsung menuju titik pemberhentian. Ketika robot telah sampai pada titik pemberhentian, buzzer akan berbunyi sebagai penanda bahwa robot telah sampai. Ketika user memasukkan sampah, mikrokontroler 3 akan mengolah data tersebut dan buzer akan berhenti menyala. Jika sampah yang diterima tidak melebihi batas maksimum kemampuan robot, maka robot akan segera kembali menuju base.

3.2. Perancangan Perangkat Keras

3.2.1. Robot Line Follower dan Letak Sensor

Gambar 3.4. memperlihatkan model line follower dan sensor pada robot line follower.

Sensor flexyforce yang digunakan pada perancangan ini diletakkan di bawah kotak sampah.

Sensor ultrasonik diletakkan di dalam kotak sampah.

Gambar 3.4. Rancangan robot line follower

Keterangan gambar : 1. Sensor flexy force 2. Sensor ping 3. Tempat sampah

3.2.2. Track Robot

Perancangan track robot pada penelitian ini menggunakan garis hitam diatas putih.

Pada track robot terdapat dua buah pos yaitu Pos 1 dan Pos 2 sebagai titik pemberhentian robot. Start robot akan dimulai dari base yang ditentukan sebagai titik awal robot dan titik pemberhentian terakhir robot.

Gambar 3.5. Track robot

Gambar 3.5. menunjukkan perancangan track robot. Track robot akan dirancang dengan lebar 1,5m dan panjang 2m. Jalur hitam robot akan dibuat dengan lebar 3cm menggunakan selotip berwara hitam. Lebar jalur pada setiap pos adalah 3cm dengan panjang 6cm, sedangkan lebar jalur pada base adalah 3cm dengan panjang 10cm.

3.2.3. Rangkaian Pemancar Xbee PRO

Rangkaian pemancar XBee PRO berfungsi menjalankan mikrokontroler 1 ATmega8535 yang telah diprogram untuk pengendalian sistem pada rangkaian pemancar.

Mikrokontroler 1 ATmega8535 mengolah data input yang berasal dari tombol, modul XBee PRO, indikator LED, dan penampil LCD. Mikrokontroler 1 membutuhkan sistem minimum yang terdiri dari rangkaian eksternal, yaitu resistor pulldown, rangkaian osilator, dan rangkaian reset. Rangkaian pemancar XBee PRO berfungsi sebagai komunikasi serial dengan rangkaian penerima XBee PRO. Nilai baudrate yang digunakan dalam penelitian ini adalah 9600.

Pengaturan nilai baudrate dilakukan menggunakan software XCTU.

Mikrokontroler 1 ATmega8535 memiliki rangkaian osilator internal (On Chip Osilator) yang dapat digunakan sebagai sumber clock bagi CPU. Untuk dapat menggunakan osilator internal, harus ditambahkan sebuah kristal dan dua buah kapasitor pada pin XTAL 1 dan pin XTAL 2. Rangkaian osilator pada perancangan ini menggunakan kristal 11.0592 MHz dan dua buah kapasitor 22 pF seperti yang ditunjukkan oleh Gambar 3.6 [16].

Gambar 3.6. Rangkaian osilator pemancar XBee PRO

Selain itu, tersedia juga fasilitas reset yang bertujuan untuk memaksa proses kerja pada mikrokontroler diulang dari awal. Bila tombol reset ditekan, maka pin reset akan mendapat input logika rendah, sehingga mikrokontroler 1 akan mengulang proses eksekusi program dari awal. Gambar 3.7. menunjukkan rangkaian reset untuk pemancar XBee PRO.

Gambar 3.7. Rangkaian reset pemancar XBee PRO [6]

Gambar 3.8. Rangkaian pemancar Xbee PRO

Gambar 3.8. menunjukkan rangkaian pemancar Xbee PRO. Rangkaian pemancar Xbee PRO berfungsi sebagai pemancar untuk komunikasi serial dengan rangkaian penerima.

Rangkaian ini menggunakan tombol sebagai input untuk mengirimkan data. Jika tombol ditekan, maka mikrokontroler 1 akan mengolah data tersebut dan mengirimkan data melalui

Xbee PRO dengan komunikasi nirkabel frekuensi 2,4 Ghz. Tombol yang digunakan adalah tombol 1 dan 2, sebagai penentu titik pemberhentian. Data yang dikirim merupakan data digital yang dikirim melalui sinyal carrier dari Xbee PRO. Tabel 3.1. menunjukkan penggunaan port-port pada mikrokontroler 1.

Tabel 3.1. Penggunaan port-port pada mikrokontroler 1

No Nama Port Keterangan

1 PortA.0 - PortA.7 LCD

2 PortC.0 - PortC.7 Tombol atau Keypad

3 PortD.0 XBee (RX)

4 PortD.1 XBee (TX)

3.2.4. Rangkaian Penerima Xbee PRO

Rangkaian penerima Xbee PRO berfungsi sebagai penerima data digital yang dikirimkan oleh rangakaian pemancar Xbee PRO. Data yang diterima kemudian diolah oleh mikrokontroler 2 sebagai penentu titik pemberhentian robot yang ditampilkan LCD. PortD.0 dan portD.1 digunakan sebagai komunikasi serial antara mikrokontroler 2 dan Xbee PRO.

Gambar 3.9. menunjukkan rangkaian osilator penerima Xbee PRO. Rangkaian osilator pada penerima XBee PRO dengan menggunakan kristal 11.059 MHz dan dua buah kapasitor 22 pF [16].

Gambar 3.9. Rangkaian osilator penerima XBee PRO

Pada rangkaian penerima XBee PRO terdapat juga rangkaian reset. Bila tombol reset ditekan, maka pin reset akan mendapat input logika rendah, sehingga mikrokontroler 2 akan mengulang proses eksekusi program dari awal. Gambar 3.10. menunjukkan rangkaian reset untuk penerima XBee PRO.

Gambar 3.10. Rangkaian reset penerima XBee PRO [6].

Gambar 3.11. Rangkaian penerima Xbee PRO

Gambar 3.11. menunjukkan rangkaian penerima Xbee PRO. Rangkaian penerima Xbee PRO berfungsi sebagai penerima untuk komunikasi serial dengan rangkaian pemancar.

Rangkaian ini menggunakan LCD sebagai penampil data yang diterima. Data yang diterima berupa data penentuan pos atau titik pemberhentian robot. Tabel 3.2. menunjukkan penggunaan port-port pada mikrokontroler 2 ATmega8535. Nilai baudrate yang digunakan sama dengan rangkaian pemancar yaitu 9600.

Tabel 3.2. Penggunaan port-port pada mikrokontroler 2

No Nama Port Keterangan

1 PortA.0 - PortA.7 LCD

2 PortC.0 Output Data Tombol 1

3 PortC.1 Output Data Tombol 2

4 PortD.0 XBee (RX)

5 PortD.1 XBee (TX)

3.2.5. Rangkaian Minimum Sistem Line follower

Rangkaian minimum sistem berfungsi sebagai pengontrol rangkaian lain pada robot line follower. Mikrokontroler 3 yang digunakan adalah IC ATmega8535. Mikrokontroler 3 akan mengolah data 8 bit dari komparator dan kemudian digunakan sebagai input dari rangkaian driver sebagai penggerak motor. Selain itu, mikrokontroler juga berfungsi sebagai pengolah data dari sensor ultrasonik dan sensor berat.

Mikrokontroler ATmega8535 sudah memiliki rangkaian osilator internal (On Chip Osilator) yang dapat digunakan sebagai sumber clock bagi CPU. Untuk dapat menggunakan osilator internal, harus ditambahkan sebuah kristal dan dua buah kapasitor pada pin XTAL 1 dan pin XTAL 2. Rangkaian osilator pada perancangan ini menggunakan kristal 12 MHz dan dua buah kapasitor 22 pF seperti yang ditunjukkan oleh Gambar 3.12 [16].

Gambar 3.12. Rangkaian osilator minimum sistem

Pada rangkaian minimum sistem line follower tersedia juga fasilitas reset sama sengan rangkaian pemancar dan penerima yang bertujuan untuk memaksa proses kerja pada mikrokontroler diulang dari awal. Bila tombol reset ditekan, maka pin reset akan mendapat input logika rendah, sehingga mikrokontroler akan mengulang proses eksekusi program dari awal. Gambar 3.13. menunjukkan rangkaian reset untuk minimum sistem.

Gambar 3.13. Rangkaian reset minimum sistem [6]

Secara keseluruhan gambar minimum sistem mikrokontroler 3 ATmega8535 ditunjukkan oleh Gambar 3.14 dan penggunaan port–port pada mikrokontroler 3 robot line follower ditunjukan pada Tabel 3.3.

Tabel 3.3. Penggunaan port-port pada mikrokontroler 3

No Nama Port Keterangan

1 PortA.0 Sensor Berat

2 PortB.0 - PortB.7 Komparator

3 PortC.0 Data Tombol 1

4 PortC.1 Data Tombol 2

5 PortC.5 Sensor Ultrasonik

6 PortD.0 - PortD.3 Data Driver

7 PortD.4 PWM Motor Kanan

8 PortD.5 PWM Motor Kiri

Gambar 3.14. Rangkaian minimum sistem

3.2.6. Rangkaian LCD

LCD ini digunakan sebagai penampil keluaran mikrokontroler khusus untuk mode tampilan pesan. LCD yang digunakan adalah LCD yang menggunakan chip kontroler Hitachi HD44780, misalnya M1632. LCD bertipe ini memungkinkan pemrogram untuk mengoperasikan komunikasi data secara 8 bit atau 4 bit. Jika menggunakan jalur data 4 bit, maka akan ada 7 jalur data (3 untuk jalur kontrol dan 4 untuk jalur data). Jika menggunakan jalur data 8 bit, maka akan ada 11 jalur data (3 untuk jalur kontrol dan 8 untuk jalur data). Tiga jalur kontrol ke LCD ini adalah EN (Enable), RS (Register Select), dan R/W (Read/Write).

Interface LCD merupakan sebuah parallel bus, untuk memudahkan dan mempercepat pembacaan dan penulisan data dari atau ke LCD [10]. Kode ASCII yang ditampilkan sepanjang 8 bit dikirim ke LCD secara 4 atau 8 bit pada satu waktu. Jika mode 4 bit yang digunakan, maka 2 nibble data dikirim untuk membuat menjadi 8 bit (pertama dikirim 4 bit MSB lalu 4 bit LSB dengan pulsa clock EN setiap nibblenya). Pengiriman data secara paralel baik 4 atau 8 bit merupakan 2 mode operasi primer. Penentuan mode operasi merupakan hal yang paling penting. Mode 8 bit sangat baik digunakan ketika kecepatan menjadi keutamaan dalam sebuah aplikasi dan setidaknya minimal tersedia 11 pin I/O (3 pin untuk kontrol, 8 pin untuk data). Sedangkan mode 4 bit minimal hanya membutuhkan 7 bit (3 pin untuk kontrol, 4 untuk data). Penelitian ini menggunakan mode 4 bit agar tidak terlalu banyak menggunakan port pada mikrokontroler. Interface LCD dengan mode 4 bit dapat dilihat pada Gambar 3.15.

Gambar 3.15. Interface LCD mode 4 bit

3.2.7. Sensor Jalur

Sensor jalur berfungsi sebagai pendeteksi garis pada track. Sensor ini menggunakan LED sebagai pemancar dan fotodioda sebagai penerima. Pada saat sensor membaca garis

putih, sensor akan mengirim data ke komparator dengan logika high dan ketika sensor mendeteksi garis hitam, sensor akan mengirim data ke komparator dengan logika low. Sensor ini berfungsi sebagai pengendali robot agar selalu mengikuti garis hitam. Robot ini menggunakan 8 buah sensor jalur, 7 buah sensor terletak di depan, dan 1 buah sensor terletak di belakang. Rangkaian sensor jalur dapat dilihat pada Gambar 3.16.

Penentuan nilai komponen resistor pada LED :

Diketahui : iLED = 20mA

Vs = 5V

VLED = 2,4V

Sehingga : RLED =( ) (3.1)

=( , )

= 130Ω

dengan iLEDadalah arus yang dibutuhkan LED oleh satu buah LED agar dapat bekerja, VLED

adalah tegangan yang dibutuhkan oleh satu buah LED agar dapat bekerja, dan Vs adalah tegangan sumber untuk 8 buah LED.

Resistor pada LED (RLED) yang diperoleh melalui persamaan 3.1 adalah 130Ω, namun tidak terdapat dipasaran sehingga menggunakan resistor 220Ω. Jika digunakan resistor 220Ω, maka arus yang mengalir adalah 11,8mA, sehingga LED dapat menyala karena arus minimal yang dibutuhkan oleh LED adalah 10mA.

Berdasakan persamaan 2.11, tegangan pada fotodioda pada saat terdeteksi garis hitam, dengan Vin (V2) = 5V, I2= 5nA dan R2= 10KΩ adalah :

= −

= 5 − (5 . 10 )

= 4,5V

Pada saat terdeteksi garis putih, nilai tegangan output akan berkebalikan dengan nilai pada saat terdeteksi garis hitam yaitu dengan logika low (0V).

Gambar 3.16. Rangkaian sensor jalur

Berdasarkan gambar 3.16., pada saat cahaya LED belum mengenai fotodioda atau terdeteksi garis hitam, resistansi pada fotodioda sangat besar atau bisa diasumsikan tak hingga atau bagaikan saklar terbuka sehingga tidak ada arus yang mengalir, sehingga tegangan keluaran bernilai 0V. Ketika cahaya LED mengenai fotodioda atau terdeteksi garis putih, arus mengalir, sehingga tegangan keluaran bernilai sekitar 5V seperti pada perhitungan.

3.2.8. Rangkaian Komparator

Komparator berfungsi sebagai pembanding antara output sensor jalur dengan tegangan referensi, tegangan referensi yang digunakan adalah 2,5V. IC yang digunakan adalah LM339.

Ketika komparator menerima tegangan lebih dari 2,5V dari sensor jalur, komparator akan mengirimkan data ke mikrokontroler 3 dengan logika high (5V) dan ketika komparator menerima tegangan kurang dari 2,5V, komparator akan mengirimkan data kepada mikrokontroler 3 dengan logika low (0V). Penentuan 2,5V sebagai tegangan pembanding

diatur melalui trimpot yang berada pada rangkaian komparator atau bisa disesuaikan dengan keinginan.

Gambar 3.17. menunjukkan rangkaian komparator pada bagian sebelah kanan.

Rangkaian komparator bagian kanan berfungsi untuk menerima input dari sensor jalur.

Rangkaian komparator bagian kiri akan menunjukkan garis putih atau garis hitam yang dideteksi oleh sensor jalur bagian kiri, dengan menggunakan indikator LED. Rangkaian komparator bagian kanan akan menerima input dari sensor jalur 1 – 4, kemudian mengeluarkan tegangan ke portB.0 – portB.3 mikrokontroler 3 pada robot.

Gambar 3.17. Rangkaian komparator

Gambar 3.17. (Lanjutan) menunjukkan rangkaian komparator pada bagian sebelah kiri.

Rangkaian komparator bagian kiri berfungsi untuk menerima input dari sensor jalur.

Rangkaian komparator bagian kana akan menunjukkan garis putih atau garis hitam yang dideteksi oleh sensor jalur bagian kiri, dengan menggunakan indikator LED. LED akan menyala pada saat sensor jalur mendeteksi garis putih dan LED akan mati pada saat sensor mendeteksi garis hitam. Rangkaian komparator bagian kiri akan menerima input dari sensor jalur 5 – 8, kemudian mengeluarkan tegangan ke portB.4 – portB.7 mikrokontroler 3 pada robot. Gambar 3.18. menunjukkan rangkaian pembagi tegangan dalam rangkaian komparator.

Gambar 3.17. (Lanjutan) Rangkaian komparator

Gambar 3.18. Rangkaian pembagi tegangan Penentuan komponen resistor pada rangkaian komparator :

Diketahui :

= 5

Komponen ditentukan yaitu 10KΩ dan tegangan keluaran yang diinginkan adalah 2,5V, berdasarkan persamaan 2.8 akan diperoleh nilai komponen sebagai berikut :

=

2,5 = 10 Ω + 10 Ω 5

2,5 5 =

10 Ω + 10 Ω

2,5

5 ( + 10 Ω) = 10 Ω 2,5

5 + 2,5

5 10 Ω = 10 Ω

2,5

5 = 10 Ω − 5 Ω

=10 Ω − 5 Ω 0,5

= 10 Ω

Jika tidak ada arus yang mengalir dari rangkaian sensor jalur ke rangkaian komparator, maka tegangan input untuk rangkaian ini adalah 0 Volt, akibatnya pada IC tegangan di terminal (+) lebih besar dari terminal (-), maka LED menyala.

Jika ada arus yang mengalir dari rangkaian sensor jalur ke rangkaian komparator, maka tegangan masukan untuk rangkaian ini mendekati Vcc, akibatnya pada IC tegangan di terminal (+) lebih kecil dari terminal (-), maka LED mati.

3.2.9. Rangkaian Driver

Rangkaian driver berfungsi sebagai pengendali kecepatan motor menggunakan IC driver L298. Port-port yang digunakan sebagai pengendali kecepatan motor adalah PortD.4 dan port D.5. PortD.0 - portD.3 pada mikrokontroler digunakan sebagai komunikasi antara mikrokontroler dengan driver. Pin Enable diberi VCC 5 Volt untuk kecepatan penuh dan PWM (Pulse Width Modulation) untuk kecepatan rotasi yang bervariasi antara 00h – 3FFh (10 bit). Gambar 3.19. menunjukkan rangkaian driver. Motor DC membutuhkan pulsa PWM dan pengaturan OCR1A/OCR1B untuk menentukan arah putaran motor. Pengaturan program ini bertujuan untuk membangkitkan pulsa PWM yang digunakan untuk mengendalikan putaran motor. Progam ini menggunakan fasilitas Timer/Counter1 pada mikrokontroler 3.

Untuk memperoleh lebar pulsa yang akan digunakan pada mode fast PWM dilakukan pengaturan register sebagai berikut :

1. TCCR1A = 0b11100000

Bit 7:6 dan bit 4:3 merupakan pengaturan keluaran pada pin OCR1A/OCR1B pada mode fast PWM.

2. TCCR1B = 0b00001001

Bit 4:3 dilikukan untuk menentukan mode operasi Timer/Counter1 yaitu fast PWM.

Bit 2:0 merupakan bit pengatur prescaler clock yang masuk ke dalam register TCNT1.

Clock osilator yang digunakan sama dengan clock CPU yaitu 12Mhz.

.

Gambar 3.19. Rangkaian driver

Untuk menentukan frekuensi fast PWM dapat diperoleh menggunakan persamaan 2.5 sehingga diperoleh nilai sebagai berikut :

= /

. (1 + )

= 12 ℎ

256. (1 + 1024)

= 45,73

Nilai frekuensi yang diperoleh adalah 45,73 Hz, nilai frekuensi selalu berbanding terbalik dengan waktu, sehingga dapat diperoleh lebar pulsa untuk satu siklus dengan perhitungan sebagai berikut :

= (3.2)

= .

= 21,86

Penelitian ini menggunakan 2 buah IC driver L298, hal tersebut untuk menghindari kerusakan pada IC. Kapasitas arus IC L298 adalah 4A, sedangkan kedua motor yang digunakan membutuhkan arus masing-masing adalah 2A.

3.2.10. Rangkaian Pembagi Tegangan Sensor Berat

Nilai hambatan pada sensor berat pada saat beban 2Kg adalah 1MΩ, tegangan input yang digunakan adalah 5V, dan tegangan output yang diinginkan dari sensor berat adalah 1,5V. Nilai hambatan diperoleh dengan melakukan pengukuran langsung pada sensor berat yang diberi beban 2Kg. Dengan menggunakan rumus pembagi tegangan seperti persamaan

2.8, diperoleh nilai = 100KΩ. Gambar 3.20. menunjukkan rangkaian pembagi tegangan pada sensor berat.

Gambar 3.20. Rangkaian pembagi tegangan sensor berat

3.2.11. Perhitungan Nilai ADC

Pada perancangan tugas akhir ini digunakan ADC Mikrokontroler 3 ATmega8535 yang memiliki 8 kanal. ADC mikrokontroler ATmega8535 terletak di portA.0 sampai dengan portA.7 dengan tegangan masukan dari pin AVCC sebesar 5V dan tegangan referensi ( ) dari pin AREF sebesar 5V. Resolusi yang digunakan pada perancangan tugas akhir ini adalah 10 bit. Contoh perhitungan nilai ADC dengan resolusi 10 bit sebagai berikut:

Tegangan masukan dari sensor sebesar 5V, tegangan referensi sebesar 5V. Nilai ADC yang akan dihasilkan berdasarkan persamaan 2.7 adalah 1024.

Nilai ADC = x 1024

=5

5 x 1024

= 1024

3.3. Perancangan Perangkat Lunak 3.3.1. Flowchart Utama

Dalam perancangan sistem ini, perangkat lunak yang digunakan sebagai programmer mikrokontroler adalah Code Vision AVR. Code Vision AVR adalah program yang menggunakan bahasa basic dan dirancang untuk compiler bahasa mikrokontroler AVR.

Program utama berisi gambaran umum tentang cara kerja sistem utama. Program utama terdiri dari program pengiriman data, data diterima, pos 1, pos 2, menyalakan buzzer, pengecekan sampah, dan proses pulang.

Gambar 3.21. menunjukkan alur program utama. Sistem dimulai dengan menekan tombol pada rangkaian pemancar dan robot akan mulai berjalan. Jika yang ditekan adalah tombol 1 pada keypad, maka robot akan berjalan menuju ke pos 1. Jika tombol 2 yang ditekan, maka robot akan berjalan menuju ke pos 2.

Jika robot telah sampai pada pos yang telah ditentukan, maka proses selanjutnya adalah menyalakan buzzer. Buzzer akan menyala sebagai indikator bahwa robot telah sampai pada pos yang telah ditentukan. Setelah buzzer menyala, berlanjut pada proses pengecekan sampah. Sensor ultrasonik akan mendeteksi apakah user telah memasukkan sampah atau belum. Jika user telah memasukkan sampah, maka buzzer akan berhenti menyala. Sensor berat dan sensor ultrasonik berfungsi untuk menentukan apakah robot mampu membawa sampah yang dibuang user. Jika kondisi sensor ultrasonik mendeteksi ketinggian sampah kurang dari 25cm dan sensor berat mendeteksi beban kurang dari 2Kg, maka berlanjut pada proses pulang dan robot akan berjalan kembali ke base. Jika sensor ultrasonik dan sensor berat mendeteksi kondisi yang lain, maka robot tidak akan berjalan menuju ke base.

Gambar 3.21. Alur pemrograman utama

3.3.2. Flowchart Pengiriman data

Alur pemrograman pengiriman data berfungsi untuk mengirimkan data yang telah diproses kepada port serial mikrokontroler. Mikrokontroler akan mendeklarasikan port-port serial, register, dan baudrate. Data yang telah siap untuk dikirim akan dikeluarkan pada port serial. Gambar 3.22. menunjukkan diagram alir pengiriman data.

Gambar 3.22. Alur pemrograman pengiriman data

3.3.3. Flowchart Penerima data

Alur pemrograman penerima data berfungsi untuk menampilkan informasi yang diperlukan oleh user. Mikrokontroler akan mendeklarasikan port dari modul Xbee PRO dan mendeklarasikan port untuk LCD. Mikrokontroler akan menerima data yang telah diterima oleh modul Xbee PRO penerima. Data yang telah diolah oleh mikrokontroler akan dikirimkan

ke LCD secara serial sebagai informasi yang diperlukan oleh robot line follower. Gambar 3.23. menunjukkan diagram alur penerima data.

Gambar 3.23. Alur pemrograman penerima data

3.3.4. Flowchart Pos 1, Pos 2, dan Pulang

Alur pemrograman pos 1,pos 2, dan pulang akan dikerjakan setelah mikrokontroler 3 menerima data dari rangkaian penerima XBee Pro. Jika tombol pada tombol rangkaian pemancar XBee Pro ditekan, maka robot akan menuju pos 1 atau pos 2, setelah itu dilanjutkan dengan mengerjakan pengecekan sampah dan terakhir mengerjakan fungsi pulang untuk kembali ke base. Gambar 3.24. menunjukkan alur pemrograman pos 1, pos 2, dan pulang.

Gambar 3.24. Alur pemrograman pos 1

Gambar 3.24. Alur pemrograman pos 1

Dokumen terkait