Minggu, 27 Desember 2009

Analog to Digital Converter (ADC)

ADC (Analog to Digital Converter)
Sebuah Analog to Digital Converter (biasanya disingkat ADC, A/D atau A to D) adalah sebuah rangkaian elektronik yang berfungsi mengubah sinyal kontinu (analog) menjadi keluaran diskrit/digital. ADC memiliki fungsi yang merupakan kebalikan dari yang dilakukan oleh sebuah digital-to-analog converter (DAC).
Umumnya, sebuah ADC adalah sebuah piranti elektronik yang mengubah sebuah tegangan menjadi sebuah bilangan digital biner. Bagaimanapun juga, beberapa piranti non-elektronik, seperti shaft encoders, dapat digolongkan sebagai ADCs.
Resolusi
Resolusi dari sebuah converter menunjukkan banyaknya nilai diskrit yang dapat dihasilkan pada skala tegangan tertentu. Resolusi biasanya dinyatakan dalam bit (binary digit). Sebagai contoh, sebuah ADC yang yang mengkodekan sebuah masukan analog menjadi salah satu dari 256 nilai diskrit mempunyai resolusi 8 bit karena
2^8 = 256.
Resolusi dapat juga dinyatakan secara elektrik dan dinyatakan dalam satuan volt. Resolusi tegangan dari sebuah ADC adalah sebanding dengan skala pengukuran keseluruhan dibagi dengan banyaknya nilai diskrit. Contoh:
* Contoh 1
o Jangkauan pengukuran skala penuh = 0 sampai 10 volts
o Resolusi ADC adalah 12 bit: 2^12 = 4096 level kuantisasi
o Resolusi tegangan ADC adalah: (10-0)/4096 = 0.00244 volt = 2.44 mV
* Contoh 2
o Jangkauan pengukuran skala penuh = -10 sampai +10 volt
o Resolusi ADC adalah 14 bit: 2^14 = 16384 level kuantisasi
o Resolusi tegangan ADC adalah: (10-(-10))/16384 = 20/16384
= 0.00122 volts = 1.22 mV
Sampling rate
Sinyal analog merupakan sinyal kontinyu dan perlu diubahnya menjadi sebuah sinyal digital. Untuk itu perlu untuk menentukan saat/waktu dimana sebuah nilai digital yang baru diambil dari sebuah sinyal analog. Saat dari pengambilan nilai baru ini disebut dengan sampling rate atau frekuensi sampling dari converter.
Karena secara praktis ADC tidak dapat membuat sebuah pengkonversian yang terus menerus, nilai masukan harus ditahan tetap selama waktu tertentu yaitu pada saat converter melakukan sebuah pengkonversian (atau disebut waktu konversi). Sebuah rangkaian masukan yang disebut rangkaian sample and hold melakukan tugasnya ( kebanyakan menggunakan kapasitor untuk menyimpan tegangan analog pada masukan dan menggunakan sebuah sakelar elektrik atau gate untuk memutuskan kapasitor dari masukan. Kebanyakan rangkaian ADC sudah terintegrasi dengan subsistem sample and hold secara internal.
Macam-macam ADC
Ada berbagai macam jenis ADC, diantaranya adalah:
* ADC pengkonversi langsung atau flash ADC mempunyai sebuah komparator untuk medekodekan masing masing range tegangan. Pengkonversian langsung memiliki kelebihan yaitu pengkonversian yang cepat, tetapi biasanya hanya diterapkan pada resolusi 8 bit (256 komparator) atau kurang, karena teknik pengkonversian ini membutuhkan rangkaian yang besar dan mahal.


Gambar 3.5 Gambar rangkaian Flash ADC
* ADC tipe counter (ADC tipe digital ramp) menggunakan counter sebagai komponen utama untuk mengubah masukan analog menjadi keluaran digital. ADC ini akan mencacah mulai dari 0 sampai nilai yang setara dengan masukan analog. Hasil pencacahan ini diubah menjadi analog dengan DAC untuk dibandingkan dengan masukan analog. Pencacahan yang dilakukan oleh counter akan berhenti jika nilai pencacahan lebih besar dari masukan analog. Nilai hasil pencacahan yang terakhir ini merupakan hasil konversi yang merupakan nilai setara masukan analog .


Gambar 3.6 Gambar rangkaian ADC tipe counter

Gambar 3.8 Gambar contoh rangkaian ADC tipe counter
* ADC successive-approximation dibuat sebagai pengembangan dari ADC tipe counter (digital ramp ADC). Perubahan dalam ADC tipe ini adalah adanya sebuah counter yang sangat spesial yang disebut successive-approximation register. Register ini tidak mencacah mulai dari 0 seperti halnya pada ADC tipe counter tetapi register ini menghitung dengan mencoba semua nilai bit mulai dari most-significant bit (MSB) dan berakhir pada least-significant bit.Di dalam proses perhitungan, register akan memperhatikan keluaran komparator untuk mengetahui apakah bilangan biner hasil perhitungan lebih kecil atau lebih besar dari masukan sinyal analog. Cara register menghitung ini mirip dengan metode "trial-and-fit” dalam pengkonversian bilangan desimal menjadi biner, dimana nilai-nilai yang berbeda dari bit-bit diujikan dari MSB sampai dengan LSB untuk memperoleh sebuah bilangan biner yang sama dengan bilangan desimal asli. Keuntungan dari teknik penghitungan model ini adalah waktu yang dibutuhkan untuk memperoleh hasil konversi menjadi lebih cepat.

Gambar 3.8Gambar rangkaian ADC tipe successive-approximation

Gambar 3.9Metode pengkonversian ADC successive-approximation



Menurut cara pengkonversiannya, ADC dapat dikelompokkan kedalam beberapa jenis yaitu :
1.Tipe Integrating
Tipe Integrating menawarkan resolusi tertinggi dengan biaya terendah. ADC tipe ini tidak dibutuhkan rangkaian sample hold. Tipe ini memiliki kelemahan yaitu waktu konversi yang agak lama, biasanya beberapa milidetik.
2.Tipe Tracking
Tipe tracking menggunakan prinsip up down counter (pencacah naik dan turun). Binary counter (pencacah biner) akan mendapat masukan clock secara kontinyu dan hitungan akan bertambah atau berkurang tergantung pada kontrol dari pencacah apakah sedang naik (up counter) atau sedang turun (down counter). ADC tipe ini tidak menguntungkan jika dipakai pada sistem yang memerlukan waktu konversi masukan keluaran singkat, sekalipun pada bagian masukan pada tipe ini tidak memerlukan rangkaian sample hold. ADC tipe ini sangat tergantung pada kecepatan clock pencacah, semakin tinggi nilai clock yang digunakan, maka proses konversi akan semakin singkat.
3.Tipe flash / paralel
Tipe ini dapat menunjukkan konversi secara lengkap pada kecepatan 100 MHz dengan rangkaian kerja yang sederhana. Sederetan tahanan mengatur masukan inverting dari tiap-tiap konverter menuju tegangan yang lebih tinggi dari konverter sebelumnya, jadi untuk tegangan masukan Vin, dengan full scale range, komparator dengan bias dibawah Vin akan mempunyai keluaran rendah. Keluaran komparator ini tidak dalam bentuk biner murni. Suatu dekoder dibutuhkan untuk membentuk suatu keluaran yang biner. Beberapa komparator berkecepatan tinggi, dengan waktu tunda (delay) kurang dari 6 ns banyak digunakan, karena itu dihasilkan kecepatan konversi yang sangat tinggi. Jumlah komparator yang dibutuhkan untuk suatu konversi n bit adalah 2^n – 1.
4.Tipe successive approximation
Tipe successive approximation merupakan suatu konverter yang paling sering ditemui dalam desain perangkat keras yang menggunakan ADC. Tipe ini memiliki kecepatan konversi yang cukup tinggi, meskipun dari segi harga relatif mahal. Prinsip kerja konverter tipe ini adalah, dengan membangkitkan pertanyaan-pertanyaan yang pada intinya berupa tebakan nilai digital terhadap nilai tegangan analog yang dikonversikan. Apabila resolusi ADC tipe ini adalah 2^n maka diperlukan maksimal n kali tebakan (Tirtamihardja, 1996).
Contoh ADC
ADC 0804
Pada ADC 0804, pin 11-18 merupakan pin keluaran digital yang dapat dihubungkan langsung dengan bus data-alamat. Apabila pin /CS atau pin /RD dalam keadaan tinggi, pin 11 sampai pin 18 akan mengambang. Apabila /CS dan /RD rendah keduanya, keluaran digital akan muncul pada saluran keluaran.
Untuk memulai suatu konversi, /CS harus rendah. Bilamana /WR menjadi rendah, konverter akan mengalami reset dan ketika /WR kembali pada keadaan tinggi, konversi segera dimulai.
Pin 5 adalah saluran untuk /INTR, sinyal selesai konversi. /INTR akan menjadi tinggi pada saat memulai konversi, dan dibuat aktif rendah bilamana konversi telah selesai.
Pin 6 dan 7 adalah masukan diferensial yang membandingkan dua masukan sinyal analog. Jenis masukan ini memungkinkan pemilihan bentuk masukan , yaitu mentanahkan pin 7 untuk masukan positif bersisi-tunggal (single- ended positif input), atau mentanahkan pin 6 untuk masukan negatif bersisi-tunggal (single-ended negatif input), atau mengaktifkan kedua pin untuk masukan diferensial.
Piranti ini mempunyai 2 ground, A GND dan D GND yang terletak pada pin 8 dan 10. Keduanya harus digroundkan. Pin 20 disambungkan dengan catu tegangan yang sebesar +5V.
Dalam ADC 0804, Vref merupakan tegangan masukan analog maksimum, yaitu tegangan yang menghasilkan suatu keluaran digital maksimum FFH. Bila pin 9 tidak dihubungkan (tidak dipakai), VREF berharga sama dengan tegangan catu VCC. Ini berarti bahwa catu tegangan +5V memberikan jangkauan masukan analog dari 0 sampai +5V bagi masukan positif yang bersisi-tunggal.
Pada ADC 0804 ini, terdapat dua jenis prinsip didalam melakukan konversi, yaitu free running dan mode control. Pada mode free running, ADC akan mengeluarkan data hasil pembacaan input secara otomatis dan berkelanjutan (continue). Pada mode ini pin INTR akan berlogika rendah setelah ADC selesai melakukan konversi, logika ini dihubungkan kepada masukan WR untuk memerintahkan ADC memulai konversi kembali. Prinsip yang kedua yaitu mode control, pada mode ini ADC baru akan memulai konversi setelah diberi instruksi dari mikrokontroler. Instruksi ini dilakukan dengan memberikan pulsa rendah kepada masukan WR sesaat + 1ms, kemudian membaca keluaran data ADC setelah keluaran INTR berlogika rendah.
. Rangkaian ini memerlukan tegangan masukan sebesar 5 VDC untuk bekerja, yang mana tegangan ini diambil dari catu daya 5 VDC yang telah dirancang.F dan resistor 10 KUntuk sistem pengontrolan level permukaan air ini karena level permukaan air harus terus dimonitor, maka ADC menggunakan prinsip free running sehingga tegangan dari sensor dapat terus dikonversi secara terus menerus. Untuk menerapkan free running mode ini maka pin WR harus dihubungkan dengan pin INTR. ADC 0804 yang penulis gunakan ini memerlukan tegangan referensi sebesar 2,5 V agar dapat bekerja. Maka untuk tegangan referensinya ini dihasilkan dari keluaran dioda referensi LM336. Sedangkan untuk sinyal clocknya dihasilkan dari kapasitor 150
Adapun rangkaian dari ADC 0804 ini dapat dilihat pada Gambar 3.2 berikut ini :





Analog-to-Digital Converter
Atmega8535
ATmega8535 menyediakan fasilitas ADC dengan resolusi 10 bit. ADC ini dihubungkan dengan 8 channel Analog Multiplexer yang memungkinkan terbentuk 8 input tegangan single- ended yang masuk melalui pin pada PortA. ADC memiliki pin supply tegangan analog yang terpisah yaitu AVCC. Besarnya tegangan AVCC adalah ±0.3V dari VCC. Tegangan referensi ADC dapat dipilih menggunakan tegangan referensi internal maupun eksternal. Jika menggunakan tegangan referensi internal, bisa dipilih on-chip internal reference voltage yaitu sebesar 2.56V atau sebesar AVCC. Jika menggunakan tegangan referensi eksternal, dapat dihubungkan melalui pin AREF.
ADC mengkonversi tegangan input analog menjadi data digital 8 bit atau 10 bit. Data digital
tersebut akan disimpan didalam ADC Data Register yaitu ADCH dan ADCL. Sekali ADCL dibaca, maka akses ke data register tidak bisa dilakukan. Dan ketika ADCH dibaca, maka akses ke data register kembali enable.
Aplikasi 1. ADC 8 Bit, Tegangan Referensi adalah AVCC.
Pada aplikasi ini mikrokontroler akan membaca tegangan analog pada input ADC0 dan
menampilkan data hasil konversinya ke PORTC. Tegangan referensi ADC sama dengan AVCC.
Jika resolusi dipilih sebesar 8 bit, maka data digital akan disimpan pada ADCH. Berikut adalah
langkah percobaannya :
1. Pastikan pin AVCC terhubung ke VCC yaitu +5V.
2. Lakukan setting codewizard sebagai berikut :

1 komentar: