3. 1.Perancangan Mobil Automatis - Rancang bangun prototype mobil otomatis yang dapat membedakan warna menggunakan konsep robot line follower

BAB III PERANCANGAN Pada bab ini akan dibahas mengenai beberapa hal dasar tentang bagaimana

  simulasi mobil automatis dirancang, diantaranya adalah : 1. Menentukan tujuan dan kondisi pembuatan simulasi mobil.

  2. Perancangan elektronik, meliputi perancangan proses kerja dan pembuatan rangkaian elektronik.

  3. Perancangan mekanik mobil, meliputi penentuan dimensi mobil (panjang, lebar, tinggi), dan bahan-bahan yang digunakan.

  4. Perancangan software, meliputi perancangan proses kerja system yang akan dibuat.

  3. 1.Perancangan Mobil Automatis Dalam pembuatan robot ini penulis memperhatikan beberapa aspek yang dibutuhkan, yaitu :

1. Mobil ini dirancang agar dapat melaju secara otomatis pada rute yang sudah disediakan.

  2. Selain mengikuti rute yang ada mobil ini juga dirancang untuk dapat membedakan warna merah, kuning, hijau dan dapat melakukan aksi yang sesuai dengan warna yang dikenali. Jika melihat warna merah mobil akan berhenti, jika melihat warna kuning mobil akan mengurangi kecepatan, jika melihat warna hijau mobil akan tetap melaju.

  3. Mobil ini dirancang dengan menggunakan Mikrokntroller ATMega8535.

  4. Mobil ini nantinya akan berjalan di jalur yang di dalamnya terdapat perempatan dan pertigaan. Dan setiap ada perempatan maka mobil secara otomatis akan belok kanan. Dan setiap adan pertigaan mobil akan menghiraukan.

  5. Semua aksi (maju, belok, berhenti, mengurangi kecepatan) merupakan logika yang diterapkan di dalam program yang ditanamkan ke Mikrokontroller ATMega 8535, dan pemrogramannya menggunakan pemrograman CodeVision AVR.

  3. 2.Perancangan Elektronik

  Perancangan elektronik ini meliputi perancangan sensor garis dan

  

comparator nya, sensor warna dan driver motor. Secara umum proses kerja

  rangkaian elektronik mobil automatis dijelaskan pada gambar di bawah ini :

  Sensor Garis Sensor Warna Comparator Mikrokontroller Driver Motor H- LM339 ATMega8535 Bridge

Gambar 3.1 Blok Diagram Mobil Automatis

  Penjelasan : A.

  Proses awal dari system yang akan dibuat ini adalah pembacaan data oleh sensor garis, hasil yang didapatkan dari sensor garis ini berupa tegangan yang didapat dari photodiode. B. Setelah mendapatkan data dari sensor proximity data tersebut dikirimkan ke comparator LM339, hal ini dilakukan untuk mengkonversi hasil awal yang berupa tegangan menjadi output yang berupa nilai digital (0 dan 1).

  C. Hasil digital dari comparator LM339 kemudian dikrimkan ke mikrokontroller ATMega8535.

  D.

  Selain sensor garis ada juga sensor warna yang berfungsi untuk membaca warna yang terdapat di rute lintasan, warna yang mungkin untuk dikenali adalah warna merah, hijau dan kuning. Nilai yang didapat dari sensor warna ini dirimkan ke port ADC yang terdapat di ATMega8535.

  E. Di ATMega8535 data dari sensor garis dan sensor warna diproses,

  pertama-tama data dari sensor garis akan diproses terlebih dahulu, data yang ada akan dirubah menjadi pwm yang nantinya akan dikirimkan ke driver motor untuk melakukan aksi (berhenti, mundur atau maju). Kecepatan dari motor DC diatur berdasarkan pwm yang diberikan oleh ATMega8535. Setelah itu dilakukan pemrosesan data untuk sensor warna. Hasil dari sensor warna ini akan memberikan aksi berupa berhenti sejenak, mengurangi kecepatan dan mengembalikan kecepatan seperti normal .

  3. 2. 1. Perancangan Sensor Garis dan Comparator

  Bahan-bahan yang dibutuhkan unuk membuat sensor garis dan

  comparator ini adalah : a.

  LED superbright warna merah 6 buah

  b. LED hijau 6 buah c.

  Photodioda 6 buah d. Resistor 220 6 buah e. Resistor 20K 6 buah

  f. Resistor 470 6 buah g.

  Variabel resistor 20K 6 buah h.

  IC LM339 2 buah

i. Jack housing 6 kaki 1 buah

  Gambar rancangan schematic dari sensor garis dan comparator ini adalah sebagai berikut:

Gambar 3.2 Schematic Sensor Garis dan Comparator

  Untuk mengetahui lebih jelas mengenai proses kerja dari sensor garis dan

  comparator ini dapat dilihat pada flowchart di bawah ini :

  

START

Baca posisi

mobil

Baca warna

lintasan Hitung nilai tegangan Bandingkan nilai Vp

  Vp= (Rs / (Rs+R)) * Vcc dengan nilai Vres Tidak Vp < Vo = 0 Vres Ya

  Vo = Vcc Kirim Vo ke (digital high 1 output)

  END ATMega8535

Gambar 3.3 Flowchart Sensor Proximity

  Penjelasan :

A. Proses pertama sensor garis ini dimulai dengan pembacaan posisi

  mobil, acuan yang digunakan oleh mobil adalah garis hitam yang terdapat di rute. Posisi tersebut dapat dilihat pada gambar 3.4

Gambar 3.4 Posisi mobil terhadap garis lintasan

  Penejelasan :

  

a) Posisi 1. Posisi robot ada di sebelah kiri dari garis yang terdapat

  di lintasan, yang berarti hanya sensor yang sebelah kanan saja yaitu sensor KA2 yang membaca garis hitam.

  b)

  Posisi 2. Posisi robot ada si sebelah kiri dari garis yang terdapat di lintasan dengan 2 sensor sebelah kanan yaitu sensor KA2 dan KA1 membaca garis hitam sedangkan 4 lainnya membaca background putih.

  

c) Posisi 3. Posisi robot ada di hampir tengah – tengah yaitu sensor

  KA1 dan sensor KA membaca garis hitam sedangkan 3 sensor kiri dan 1 sensor kanan yaitu sensor kanan terluar membaca background putih.

d) Posisi 4. Posisi robot ada di tengah – tengah garis hitam, yaitu

  sensor KA dan KI yang tepat berada di tengah-tengah membaca garis hitam, sedangkan sensor paling kiri dan kanan membaca background putih.

  e)

  Posisi 5. Posisi robot berada hampir di tengah – tengah ketika 2 sensor sebelah kiri yaitu sensor KI dan KI1 membaca garis hitam sedangkan 3 sensor kanan dan sensor kiri terluar yaitu KI2 membaca background putih.

  f)

  Posisi 6. Posisi robot ada di sebelah kanan garis hitam, ketika sensor KI1 dan KI2 membaca garis hitam, sedangkan sensor yang lainnya membaca background putih.

  g) Posisi 7. Posisi robot ada di sebelah kanan garis hitam, yaitu ketika sensor kiri terluar membaca garis hitam sedangkan sensor lainnya membaca background putih. Secara teori ketujuh posisi inilah yang mungkin terjadi saat mobil melaju di lintasam, tetapi pada prakteknya selain ketujuh posisi di atas ada posisi-posisi lain yang juga mungkin terjadi, yaitu posisi 8 ketika hanya sensor KA1 yang membaca garis hitam, posisi 9 ketika hanya sensor KI1 yang membaca garis hitam, posisi 10 ketika semua sensor membaca garis hitam dan posisi 11 ketika semua sensor membaca background putih

  Posisi – posisi di atas lah yang akan mempengaruhi mobil untuk melakukan aksi (lurus, belok kiri atau kanan), pergerakan mobil tersebut dapat dilihat pada tabel 3.1 :

Tabel 3.1 Pergerakan mobil

  Posisi Aksi Robot Roda Kiri Roda Kanan

  1 Belok kanan tajam Maju cepat Berhenti

  2 Belok kanan sedang Maju cepat Maju lambat

  3 Belok kanan ringan Maju cepat Maju sedang

  4 Maju lurus Maju cepat Maju cepat

  5 Belok kiri ringan Maju sedang Maju cepat

  6 Belok kiri sedang Maju lambat Maju cepat

  7 Belok kiri tajam Berhenti Maju cepat

  8 Belok kanan ringan Maju cepat Maju sedang

  9 Belok kiri ringan Maju sedang Maju cepat

  10 Belok kanan tajam Maju cepat Berhenti

  11 Kondisional Kondisional Kondisional B.

  Setelah mengetahui letak dari mobil, langkah selanjutnya adalah mencari nilai tegangan dari masing-masing photodiode jika photodiode mengenai warna hitam maka resistansi photodiode akan berkurang sedikit, sedangkan jika mengenai warna putih maka resistansinya akan menjadi kecil. Resistansi photodiode pada umunya adalah sebesar 150K , jika membaca garis hitam maka nilai resistansinya bisa menjadi ±145K sedangkan jika membaca garis putih nilai resistansinya menjadi ±10K . Dengan diketahuinya nilai resistansi dari photodiode dan resistor yang digunakannya, maka kita dapat menghitung nilai tegangan dari masing-masing photodiode dengan menggunakan rumus 2.4

  Nilai resistansi resistor : 10K . Nilai resistansi photodiode saat warna putih : 10K Nilai resistansi photodiode saat warna hitam : 145K

  Perhitungan : Saat photodiode membaca warna putih Vp = (10 / (10+10)) * 5V = 2.5V Saat photodiode membaca warna hitam Vp = (145 / (145+10)) * 5V = 4.67V

  Jadi, nilai tegangan photodiode saat membaca warna putih adalah 2.5V, dan saat membaca warna hitam adalah 4.67V.

  C.

  Setelah mendapatkan nilai tegangan dari photodiode nilai tersebut dikirim ke rangkaian comparator, dan di rangkaian comparator nilai tersebut dibandingkan dengan nilai tegangan dari variable resistor yang digunakan. Prinsip dari comparator ini adalah jika Vp > Vres maka Vo = Vcc (digital high 1 output), sedangkan jika Vres < Vo maka Vo = 0 (digital low 0 output). Untuk mencari nilai tegangan dari variable resistor kita bisa mencari rata-rata dari tegangan photodiode yang akan dibandingkan, sehingga bisa didapatkan nilai sebagai berikut :

  Vres = (2.5+4.67) / 2 = 3.59V Setelah mengetahui nilai tegangan dari variable resistor, maka tegangan dari photodiode dibandingkan dengan Vres tersebut, untuk hasilnya dapat dilihat pada tabel 3.2 Tabel 3. 2 Hasil perbandingan Vp dengan Vres

  Vp Vres Vo

  4.67 3.59 1 digital output

  2.5 3.59 0 digital output Hasil dari perbandingan ini kemudian dikirmkan ke ATMega 8535 untuk kemudian diproses dan dikirmkan ke driver motor sebgai interupsi pergerakan roda (maju, mundur, berhenti).

  3. 2. 2.Perancangan Sensor Warna

  Sensor warna ini berfungsi untuk mengenali perbedaan warna merah, kuning, hijau.

  Berikut ini adalah gambar schematic rangkaian sensor warna: .

Gambar 3.5 Schematic Sensor Warna

  Sensor warna ini bekerja dengan cara merubah cahaya menjadi tegangan, prinsip kerjanya sama dengan prinsip kerja dari photodiode. Hasil tegangan yang didapat dari sensor warna ini kemudian dimasukkan ke dalam ADC.

  Cara kerja dari sensor warna ini adalah sebagai berikut:

  a. Proses awal dari sensor warna ini adalah pembacaan warna saat mobil melaju, hasil pembacaan warna ini akan mempengaruhi resistansi photodiode, sehingga mempengaruhi besar kecilnya tegangan yang dihasilkan oleh photodiode.

  b. Hasil tegangan yang diperoleh dari sensor garis kemudian dikirim ke

  port ADC pada microcontroller. Melalui port ADC ini tegangan tersebut dirubah menjadi sinyal analog.

  c. Sinyal analog tersebut kemudian dirubah menjadi bilangan 8bit agar

  dapat dibaca oleh microcontroller

  3. 2. 3.Perancangan Driver Motor

  Driver ini berfungsi untuk memberikan interuksi kepada motor dc untuk melakukan sebuah aksi, baik itu maju, mundur, ataupun berhenti.

  Bahan-bahan yang dibutuhkan untuk membuat rangkaian ini adalah sebagai berikut :

  a.

  Transistor 4 buah b. Resistor 330 6 buah

  c. Optocoupler 3 buah

  d. Diode 4148 2 buah Gambar rancangan schematic dari driver motor ini adalah sebagai berikut:

  M

Gambar 3.6 Schematic Driver Motor Keterangan :

  Proses kendali dalam hal ini ditentukan oleh logika dari OUT_KIRI_A,

OUT_KIRI_B, dan REM_KIRI, di mana agar motor tersebut bekerja, maka

kondisi OUT_KIRI_A, OUT_KIRI_B, dan REM_KIRI harus saling berbeda

logika. Motor akan maju OUT_KIRI_A bernilai 0 dan OUT_KIRI_B bernilai 1,

motor akan mundur apabila OUT_KIRI_A bernilai 1 dan OUT_KIRI_B bernilai

0, dan motor akan berhenti jika REM_KIRI bernilai 0.

  Berikut ini adalah tabel kebenaran motor driver, yang digunakan untuk mengetahui proses input, output dan aksi yang diberikan ke motor.

Tabel 3.3 Tabel Kebenaran Driver Motor Kiri

  Out A Out B Rem Aksi Motor

  1

  1 Maju

  1

  1 Mundur x x Berhenti

  3. 3.Perancangan Mekanik

  Perancangan mekanik mobil zxmeliputi penentuan dimensi mobil (panjang, lebar dan tinggi), struktur material yang digunakan dan penempatan rangkaian-rangkaian yang sudah dibuat sebelumnya.

  Bahan-bahan yang diperlukan untuk membuat mekanik mobil adalah sebagai berikut : a. Acrilic hitam b. Roda statis 2 buah. d.

  Rangkaian – rangkaian elektronik.

e. Baterai 1,5 V 6 buah.

  Mekanik yang dibuat direncanakan akan memiliki panjang 15cm, lebar 14 cm, tinggi 10 cm, dan memiliki 2 tingkat.

  Gambar rancangan mekanik yang akan dibuat adalah seperti di bawah ini:

Gambar 3.7 Mekanik Mobil 3. 4.

  Perancangan Perangkat Lunak

  Perangkat lunak yang akan dibuat adalah perangkat lunak yang dibuat menggunakan bahasa C dengan program compiler yang bernama CodeVision a. Pembacaan data sensor baik sensor garis maupun warna.

  b. Pemrosesan data sensor.

  c. Pengendali kedua motor DC yang digunakan. Berikut ini diagram alir dari perangkat lunak yang akan dibuat:

  START Inisialisasi Port Mobil dijalankan Baca sensor

  END garis Tidak Atur direksi, dan

  Pemrosesan data PWM>0 PWM untuk motor sensor garis

  Ya Baca sensor Keluaran ke Keluaran ke warna motor motor Warna=

  PWM=100 Ya =hijau

  Tidak Warna= PWM=70 Ya

  =kuning Tidak Warna= =merah

  Tidak Ya Ya For(secon=0;se

  PWM=100 PWM=0 con<7;secon+

  Penjelasan :

Gambar 3.8 Diagram Alir Perangkat Lunak

  a. Port yang digunakan adalah port A.0 untuk sensor warna, port D.0- D.5 untuk sensor garis, port C.0-C.1 untuk counter, port C2.-C.7 untuk driver motor, port B.0-B2 dan B4-B7 untuk LCD.

  b. Selain inisialisasi port ada juga inisialisai variable-variable lainnya, seperti x untuk posisi, lpwm, rpwm untuk nilai pwm dari motor, second untuk waktu, dan lain-lain.

  c.

  Aksi pertama yang dilakukan mobil adalah maju. Setelah maju, mobil baru membaca garis.

d. Pembacaan garis disesuaikan dengan cara kerja sensor garis. Setelah

  membaca garis program akan memberikan pwm dan direksi yang kemudian dikirim ke driver motor. PWM yang akan dikirim harus lebih besar dari 0, karena jika PWM bernilai 0 maka berarti mobil akan berhenti dan program akan berakhir.

  e.

  Setelah pembacaan sensor garis, selanjutnya adalah pembacaan warna, pembacaan warna ini dilakukan dengan cara mengambil nilai dari sensor warna yang menggunakan pin ADC.0, setelah mendapatkan nilai tersebut mobil akan melakukan aksi sesuai dengan warna yang dilihat, jika melihat warna kuning maka pwm dikurangi, jika hijau pwm dikembalikan normal dan jika merah pwm dihilangkan, rem diaktifkan selama 7 detik.

  f.

  Setelah proses pembacaan sensor warna dilakukan, hasil direksi dan pwm langsung diberikan ke motor kiri dan kanan. Dan motor kiri dan kanan akan melakukan aksi sesuai dengan direksi dan pwm yang diberikan.

  g.

  Setelah menggerakkan motor, program akan kembali mengeksekusi pembacaan garis, proses ini dilakukan terus menerus sampai menemukan titik dimana pwm bernilai 0, yaitu ketika sensor garis membaca nilai 100001.