Wednesday, April 7, 2010

Belajar ADC

ADC merupakan singkatan dari Analog to Digital Converter, yakni merupakan suatu sistem / alat yang berfungsi mengubah Isyarat Analog menjadi Digital. Kenapa harus digital?ya karena proses penganalisaan dan pengolahan datanya mudah. Contoh nih, kita punya sebuah rangkaian sensor warna yang outputnya masih berupa tegangan analog (0-5 volt), sedangkan kita ingin menampilkan datanya ke seven segment, LCD atau komputer. Terus bagaimana caranya? Untuk mengatasi masalah ini, rangkaian ADC sangat diperlukan. Salah satu contoh komponennya adalah IC ADC 0804 yang mempunyai resolusi 8 bit, atau dengan kata lain hasil konversi tegangannya nanti bernilai antara 0-255 (decimal). Namun, bagi saya, komponen ini terhitung mahal, harganya sekitar Rp 20 ribuan (loh, 20 ribu kok mahal?). iya mahal… karena komponen dengan harga 20 ribu ini cuma punya satu fitur saja. Ya ADC itu. Selain itu, ADC 0804 ini juga cuma punya 1 channel saja, jadi kalau misalnya kita mau membuat sensor warna dengan banyak pixel, akan dibutuhkan komponen seperti ini lebih banyak lagi (ribet dah, tambah mahal lagi…).

Sebagai alternatif lain, dapat digunakan mikrokontroller. Biar ga capek ngetik, saya singkat dengan sebutan uC. Salah satu contohnya adalah mikrokontroller AVR ATMEGA8. Harganya hampir sama dengan ADC 0804 (malah lebih murah seribu – duaribu rupiah), tapi fitur yang ditawarkan bermacam – macam. Selain ADC, ada juga fasilitas PWM, interupsi (eksternal/internal),komunikasi serial, dan masih banyak fitur-fitur lain. Penjelasan lebih lanjut mengenai mikrokontroller ini akan dibahas di posting-posting berikutnya… (InsyaAllah J ). Khusus fitur ADC, uC ini memiliki ADC 6 kanal yang masing-masing memiliki resolusi 10 bit (desimalnya mencapai 1023). Coba saja bandingkan dengan ADC 0804 tadi. Jauh lebih murah kan?selain itu fiturnya lebih komplit. Manteb dah..hehe..
Nah dibawah ini contoh rangkaian penggunaan ADCnya. Disini kita akan mengkonversi tegangan divariabel oleh potensiometer 10K. software yang digunakan adalah Proteus 7 Professional untuk simulasinya dan BASCOM-AVR sebagai compiler source codenya.






Tegangan pada pin data potensiometer tersebut berkisar antara 0-5 volt, kemudian oleh uC dikonversi menjadi decimal antara 0-1023. Nah, untuk pengembangannya, potensiometer RV1 bisa diganti dengan komponen lain misalnya LM35, sensor warna, sensor Sharp GP2D12, dll. Dan yang terakhir, semoga bermanfaat.. J
Ni Source code nya :
$regfile = "m8def.dat" 'pake ATMEGA8
$crystal = 8000000
Config Lcdpin = Pin , Db4 = Portd.2 , Db5 = Portd.3 , Db6 = Portd.4 , Db7 = Portd.5 , E = Portd.1 , Rs = Portd.0 'port LCD
Config Lcd = 16 * 2
Config Adc = Single , Prescaler = Auto , Reference = Avcc
Start Adc
Dim Data_adc As Word
Cursor Off
Cls
Do
Data_adc = Getadc(0) 'ADC channel 0
Locate 1 , 4
Lcd "data adc:"
Locate 2 , 6
Lcd Data_adc ; " " 'Tampilkan ata ADC ke LCD
Waitms 200
Loop



Related Post:

2 comments:

  1. Listing buat di cvavr nya skalian donk...
    /*buat tugas kuliah ane nih gan..pliss*?

    ReplyDelete
  2. waah maaf sekali ini lagi banyak kerjaan..ntar klo udah ada waktu saya bantu..OK gan.. :)

    ReplyDelete