Kita akan mulai membahas tentang sensor robot line follower yang pake ADC yang sudah tersedia di mikrokontroller sebagai pengganti komparator misalnya komparator yang pake IC LM 324, LM 339 dll. Tujuan kita memakai sensor yang pake ADC adalah untuk memangkas rangkaian elektrikal pada robot, pada rangkaian sensor kita hanya menggunakan Photodioda yang dihubungkan seri dengan resistor variable (trimpot) dan langsung masuk ke port ADC pada mikrokontroller (catatan: Mikro harus ada ADC internalnya, misal: ATMega 16) , kita tidak membutuhkan komparator untuk mengolah keluaran sensor sehingga rangkaian elektrikalnya menjadi lebih simple, tetapi kita perlu tambahan koding
.

Rangkaian sensor yang simpel (menggunakan ADC)
Pada dasarnya rangkaian diatas hanyalah dua buah komponen yang punya resistansi dan dapat membagi tegangan diantara 5v dan ground. Sebagai contoh kita memakai 8 sensor untuk robot yang dimasukkan ke Port ADC (misal PORT A pada ATMega 16), lalu kita baca keluaran tegangan sensor dengan menggunakan ADC, lalu kita bandingkan dengan set-point yang telah kita set, misal jika tegangan sensor <> 2.5 volt maka termasuk logika 1, tapi dalam ADC 8 bit tegangan akan dikonversi menjadi bilangan 0-255 (unsigned char) misal tegangan 2.5 volt dikenali dengan nilai 128. Selanjutnya kita baca semua sensor satu per-satu dan keseluruhan logika sensor kita masukkan dalam sebuah variable
Contoh program:

Nah program diatas adalah untuk mendeteksi tegangan sensor dengan ADC sekaligus menampilkannya ke LCD dan keluarannya disimpan dalam variable bernama sensore yang bertipe data unsigned char, misal jika hanya sensor paling kanan yang terkena garis maka variable sensore akan bernilai 00000001 apabila 2 sensor tengah yang terkena garis maka nilai variable sensore akan bernilai 00011000 dan lain lain. Pada program diatas kita butuh variable array barnama peka, variable tersebut menentukan kepekaan sensor kita, dan sudah harus kita set terlebih dahulu, variable Epeka merupakan variable dari EEPROM (kalo pake EEPROM) agar setelah diset variable tidak hilang. Kita juga bisa menggunakan tombol-tombol untuk mengeset variable peka, atau juga bisa dengan auto scanning (robot berputar mencari garis dan mengukur kepekaan dengan sendirinya).
Wah... itu kodeku...
BalasHapusha..ha..ha...
mas contoh programnya kuk gak keliatan ya?
BalasHapusmuangkin bisa minta contah programnya mas.
email:agus_8819@yahoo.co.id
thank.
Silahkan diklik gambar contoh kode untuk memperbesar...
BalasHapusmas kalo program kalibrasinya gmn ya mas? Syukran
BalasHapuskalo kalibrasinya bisa kita cari nilai rata-ratanya.
BalasHapusmisal salah satu sensor kita berikan garis hitam maka nilainya 220, lalu sensornya kita berikan warna putih maka nilainya 50.
nah dari sini dapat kita cari nilai rata-rata yaitu:
kalibrasi = (220 + 50) / 2 = 135
ow.... begitu...
BalasHapustapi misal hasil kalibrasi kita simpan di eeprom, berarti gak perlu kalibrasi lagi ya...
Iya...
BalasHapusTapi jika nilai kalibrasi tidak valid lagi, perlu dikalibrasi ulang.
misal kalibrasi pertama di track A, dan berhasil. tapi di track B gagal (mungkin karena perbedaan konsentrasi warna garis/debu).
maka harus di kalibrasi lagi..
matur suwun atas penjelasannya... ^_^
BalasHapusIya sama-sama...
BalasHapusmas tanya lagi, aku punya ref sensor tapi pake komparator, peletakan photo diodanya tho reverse, tapi kalo pake adc yang punya mas forward biasa, bedanya apa mas? thanx atas penjelasannya....
BalasHapusmaskud anda susunannya dibalik?
BalasHapusvcc-P.diode-R-GND??
bisa koq pake ADC,
tinggal diInvers aja...
buka tapi arah katoda potodioda mengarah ke vcc (reverse/kebalik), gitu mas...?
BalasHapusWah, kalo susunannya seperti itu kayaknya nggak bisa..
BalasHapussoalnya saya pernah coba susunan seperti itu tapi nggak detect..
ya mungkin dicoba-coba aja, siapa tahu mungkin bisa..
Kalo bole aku juga mita programnya,
BalasHapusku mau belajar lebih lanjut
m4215AR@yahoo.com
koclok programe, ra ketok ndes
BalasHapusblog e payah..!!
BalasHapusnanggung bo.....
BalasHapusassalamualaikum
BalasHapusbang, klo boleh minta programnya ya...
all_about_faizal@yahoo.com
maturnuwun... =)
klo bisa profil yang punya blog ini di show jg ya, ini klo bisa ya... ^_^
BalasHapusmas itu berarti ADCnya d baca satu per satu ya?
BalasHapustolong donk kasih contoh programnya...
jhonsonproduce@gmail.com
Iya, benar..
BalasHapusADCnya dibaca satu persatu secara bergantian..
setelah semua terbaca, keluarannya di masukkan kedalam variabel "sensore"..
mas..tolong banget donk...program lengkapnya kayak apa????
BalasHapusdi emailin...
email :yudza_88@yahoo.com
trimakasih sbelumnya......
mas q lom paham, tolong donk q kirimi program yg lengkap..di emailin ya...
BalasHapusemail:punky_copral@ymail.com
q tunggu ya mas........
thks...............
Komentar ini telah dihapus oleh pengarang.
BalasHapusmas sy mo nanya...
BalasHapusuntuk ADC 10bit gmn perhitungan'y...
maksi sblum'y.... :)
salam kenal sebelumnya mas...
BalasHapusmantep mas,saya sangat tertarik buat belajar ADC IR dengan multipleksing. bisa minta skematik sensor sama code progamnya gak mas...buat refrensi saya. tolong kirim ke diyon_1988@yahoo.com.makasih sebelumnya mas.saya tunggu mas....
bos saya minta programnya yang lengkap ..
BalasHapuskirim ke email saya bos..
ananasrofi90@gmail.com
terima kasih bos....
mas bisa minta program lengkapnya ya mas,..
BalasHapuskirim ke arissaf90@gmail.com,..
makasih lho mas,..
I see your idea, nice gan..
BalasHapusmas boleh minta kode programnya gak ?
BalasHapuskirim ke jepy.electric@gmail.com
makasih sblmnya,,
Mantab artikelnya gan!
BalasHapusmaaf mengganggu saya hanya ingin berbagi artikel yang berkaitan tentang Sensor Garis
BalasHapusberikut linknya :
http://repository.gunadarma.ac.id/bitstream/123456789/3094/1/IMG_0025.pdf
semoga bermanfaat :)
Om minta list program full nya dong,.. :D
BalasHapuscowox_dream@yahoo.co.id
makasih om sebelume,.. :D