Minggu, 24 November 2013

Diposting oleh Unknown

KLIK TO ENLARGE PICTURE     !
  ada banyak sekali tutorial2 mengenai line tracer/ line follower mikro. tapi kebanyakan tidak jelas, entah dikurang2in programnya, dibikin salah, kalo tanya ga dijawab.. lengkap deh. tapi dari semua sumber yg ada itu Mas Boy rangkum, dan coba terus, jadilah line tracer mikro Mas Boy. berikut skematiknya
skematik rangkaian utama
note : pada realnya, di switch on/off ada yg salah, Mas Boy jumper, tapi lupa yg mana hehe. jadi pastikan jika switch on terhubung ke rangkaian, dan jika off, tidak tersambung ke mana2. kondisikan seperti itu ya :), atau ga usah pake sekalian, kalo batre nancep, langsung nyala. dan ingat, NANCEPIN BATRE JANGAN KEBALIK, klo kebalik, ntr ada yg rusak tu (yakin lah sumpah)

note: ada yg kurang, di pin2 driver motor, kasih dioda 1A dari V+ ke + motor & V+ ke - motor, dan dari + & - motor ke GND di kedua motor ya. total jd 8 dioda. kelihatan di screenshot ada dioda yg Mas Boy solder dari bawah hehehe. gunanya, biar ga ada arus balik perputaran motor. klo ga pake ini, ntr tu mikro ngereset mulu klo dijalanin.

skematik sensor
note: mas boy nyolder led n photodiode kebalik (nyoldernya disisi PCB yg ada tembaganya) lihat screenshot biar jelas
board rangkaian utama
board rangkaian sensor
nb: jarak antar led & photodiode disesuaikan sendiri dgn lebar garis atau ubah aja urutan biner di switch case

screenshoot gan:







bahannya:
-led superbright 3mm/5mm warna sembarang(8)
-photo diode 3mm/5mm (8) #kalau bisa ukuran led & photodiode sama
-resistor 22k (8)
-resistor 1k (10)
-amphenol 10 pin (1) #bisa diganti header bisaa
-kabel 10 pin (1)
-header (1) #utk pin downloader, pin baterai, lcd, dsb
-rol kecil bekas parfum (1) #kaya rol botol fresh care/penjual bibit parfum
-switch on off tekan (1) #kondisional
-7805 (1) #regulator 5V utk komponen di board utama
-C 10uF 16V(1) 
-TIP 3055 (1) #biar arusnya bisa maksimal masuk, Mas Boy pernah ga pake, cepat panas 7805nya
-Push button (5) #4 utk menu, 1 utk reset
-trimpot 10k (1) #mengatur brightness lcd
-mikro (1) #Mas boy pake atmega 16
-L298 (1) #baca note
-konektor skrup (2) #menghubungkan output driver motor ke motor DC
-dioda 1A (9) # 1 utk LCD, 8 buat driver motor
-header female (1) #buat dudukan LCD, ga pake gpp
-dioda 4148 (1) #utk regulator aja
-kabel secukupnya
-PCB
-motor DC (2) #baca note
-ban, gear, mur baut, sesuai rancangan fisik
-batre Li-Po #jangan pake batre biasa (batre kotak/ABC), ga bakalan kuat (tested). 

note :
   inti dari line tracer adalah ketepatan membaca garis dan kecepatan. utk ketepatan InsyaAllah sudah ada di program utk kecepatan tergantung motor DC. ada macam2 motor DC, 5V, 9V, 12V,24V,dsb. terserah pake yg mana. karena Mas Boy batrenya Li-Po 12V 1A ya gampangannya motor 12V jg. tapiiii.. motor 12 V ada macem2 rpm nya. semakin tinggi rpm, arusnya makin besar, harga juga mahal.
    naaah ukur dulu arus pada motor DC yg dipake dengan cara menghubungkan dengan power supply, lalu di bagian +/- nya dihubung seri dgn ammeter. dari situ, pilih lah driver motor yg tepat. utk L298/L293, baca dulu tu datasheet, berapa arus maksml yg bisa disupply ke motor. kalau tidak, driver bisa meledak (ini fakta).paling sip ya pake transistor FET, bisa ngalirin arus besar. bikin konfigurasi yg namanya H-Bridge. tapi hati2, temen Mas Boy bikin berapa kali, salah mulu, bisa muncul apinya lo.hehe. bijaklah dalam pemilihan motor DC dan drivernya ya


oke, alur ceritanya begini:
  1. cahaya yang dipancarkan led superbright akan memantul ke bidang, sesuai dengan spektrum warna, semakin putih bidang maka semakin banyak cahaya terpantul. cahaya yg terpantul itu di tangkap photodiode dan menjadi bentuk tegangan. Jika photo dioda tidak terkena cahaya, maka nilai resistansinya akan besar ,tegangan juga besar, atau dapat diasumsikan menjadi tak hingga. Sehingga arus yang mengalir pada komparator sangat kecil atau dapat diasumsikan berlogika 0.
    Jika photo dioda terkena cahaya, maka photo dioda akan bersifat sebagai sumber tegangan dan nilai resistansinya akan menjadi kecil, tegangan juga kecil, sehingga akan ada arus yang mengalir ke komparator atau berlogika 1.

  2. kasih header n definisi dulu yaaa.. biar variable2 di bawah jelas maksudnya

  3. dari rangkaian sensor, di hubungkan dengan ADC di mikrokontroler (PORT A 0-7). naah.. disinilah proses ini terjadi. saya jelasin pk program ya. di void scan_garis(), saat memulai program jangan lupa seting ADC aktif ya di port A. nah perintah mengambil/mengolah hasil tangkapan  rangkaian sensor tadi cukup menggunakan "read_adc(i)". i yg dimaksud adalah port ADC di PORT A. dan ada perintah for dari 0-7. artinya void scan_garis() akan mengambil data ADC dari sensor dan ditampilin ke LCD. karena 8 bit berati ntr nilainya 0-1023. karena ada 2 jenis warna yg dijadikan referensi (terang & gelap) atau garis dan latarnya, maka kita harus mengambil 2 data, garis (garis[i])dan latarnya (back[i])
  4. bandingkan kedua nilai tersebut. pada line tracer analog, tugas ini dilakukan komparator/op amp. kita bagi 2 dulu nilai ADC garis[i] dan back[i]. ini agar kita mendapatkan referensi "batas" agar mikro dapat menentukan, "ini garis atau bukan". ini dilakukan di void hit_tengah(). oke, kita bkin logikanya di void konvert_logic(). karena Mas Boy ingin garis yg diikuti adalah putih, maka sesuai langkah 1 di atas, nilai ADC utk garis pasti lebih kecil daripada nilai tengahnya. kita beri loogika 1. kebalikannya dengan latar (yg lebih gelap daripada garisnya logika 0)
  5. okee.. dengan begini mikro sudah mengerti yg mana garis, yg mana yg bukan. artinya jika yg diikuti bukan garis, line tracer harus cari garisnya.muehehe. naaah.. tadikan cuma proses.. ini program menentukan arah dan kecepatan line tracernya. di void logika(), nilai2 dari konvert_logic() tadi kan cuma proses, tapi belum disusun. susun dulu pakai void logika(), jadi kita dapatkan deret biner ADC dari PORTA (0-7) jika garis logika 1 kalo bukan 0. oke, bisa dilihat di void run(), menggunakan switch case (memilih keadaaan), direction kanan/kiri/maju, dan nilai PWM (0-255), Mas Boy ambil 2 contoh aja ya, kalau 0b00011000 artinya 2 sensor ditengah mengenai garis, artinya tinggal lurus kenceng aja kan?perintahnya jika kejadiannya seperti itu maju(255,255) artinya direction maju, kecepatan ban kiri dan kanan 255 (maksimal). oke sip.jika 0b00000001, artinya cuma 1 sensor paling kanan yg kena garis, artinya line tracer menceng ke kiri, artinya harus dibelokkan ke kanan, jadi kanan(255,255) artinya direction ke kanan (ban kiri maju, ban kanan mundur) dengan kecepatan maksimal karena mencengnya jauh. kalo menceng dikit ya dikit aja gesernya (pwm salah satu ban lebih kecil.
  6. kanan/kiri/maju sm nilai pwm kok tau2 ada? ini maksudnya. ternyata kanan/kiri/maju adalah void, jadi di switch case itu kita memanggil sub program. void itu mengatur arah gerakan motor DC. jadi untuk menggerakan motor DC, kan harus + dan -, logikakan jadi 1 & 0. ya sudah, di void kiri/kanan/maju itu Mas Boy mengatur arah gerakan motor DC, port2 yg dimaksud disana terhubung dengan driver motor.

  7. sub program sudah jadiiiiiii! daaan.. untuk melihat hasilnya,tampilkan di LCD, panggil sub programnya, ntar nampil angka biner,sesuai jika garis putih 1, bukan 0. JANGAN LUPA PERINTAH LCDNYA YA!
  8. proses uda,ini program utamanya. ingat, di skematik ada 4 tombol kan? itu tombol menu. jadi tombol 1 utk scan garisnya, tombol 2 backgroundnya, tombol 3 kondisional aja, cuma buat ngecek aja sebelum run ga dipencet gapapa.  nah, pencet sesuai urutan td ya, lalu reset, dan tombol4 utk run

    ssyuudah selese.. khusus untuk tombol 4, Mas Boy bikin 2 keadaan, (ada 2 jenis void run, run_kiri & run_kanan) soalnya waktu itu start2nya dari 2 sisi, otomatis program switch casenya dibalik. hehe. silahkan bikin satu run aja sebagai dasar. naaah...ini dasarnya aja, modifikasi sesuai lintasan yg anda jalani. 
    daaann... mas boy sudah ngasih yg sebenar2nya, ga ada yg kurang, dan ada tips2nya, panjang lebar gene ya, ya, biar yg pemula bisa tau, ga ada kan tutorial lengkap gene? 
     tapiii... karena sudah jelas, maka berusahalah, Mas Boy ga kasih link donlod buat skematik eagle n source codevisionnya. itulah proses belajar, jangan terbiasa instant. semua ada di image2 nya, silahkan susun dan buat sendiri :)

silahkan komen kalo mo tanya :)

ni video pas line tracer Mas Boy dilomba in sama punya temen2 sekelas..uehehe




Comment :

Unknown mengatakan...
on 

Mas. Mau tanya, untuk inisialisasi sudah diketik terus untuk memasukkan perintahnya gimana? ex:
maju;
kanan;
kiri;
dan seterusnya.

Unknown mengatakan...
on 

Permisi Mas Boy ane mautanya nih, PORTB.3=0 itu apa ya. Apa itu tombol tambahan.
Mohon penjelasanya, sebelumya saya ucapkan terimakasih.

Unknown mengatakan...
on 

Permisi Mas Boy ane mautanya nih, PORTB.3=0; itu apa ya. Apa itu tombol tambahan.
Mohon penjelasanya, sebelumya saya ucapkan terimakasih.

Shikamaru Nara mengatakan...
on 

thanks gan sudah share
Lampu service hp