Mengapa menggunakan 2.048V dan 4.096 sebagai referensi?

25

Pada banyak IC referensi tegangan (Sebagai contoh, sebuah MAX610x ) tampaknya ada berbagai tegangan referensi yang tersedia (1,25, 1,8, 2,5, 3,3 dll).

Apa yang menurut saya aneh adalah referensi 2.048V dan 4.096V. Mengapa kita menggunakan referensi pada voltase itu alih-alih hanya 2V dan 4V yang tentunya lebih mudah digunakan secara matematis?

MCG
sumber
11
untuk sistem biner, 2.048 lebih mudah digunakan secara matematis
Alnitak
@ Al: Tidak juga. Hanya terlihat lebih mudah untuk tidak berpikir pada pandangan pertama.
Olin Lathrop

Jawaban:

49

Ketika tegangan quantising (yaitu melewati ADC), Anda biasanya mengkonversi tegangan ke representasi integer yang direpresentasikan menggunakan kekuatan skema 2.

Ini berarti bahwa mereka masuk dalam pola bilangan biner, misalnya DAC 8 bit memiliki 256 level individu. Menggunakan referensi yang memiliki kekuatan 2 jumlah milivolt berarti bahwa nilai digital aktual memiliki nilai signifikan.

Misalnya, jika Anda memiliki DAC 11-bit dengan referensi 2,048, maka nilai digital adalah jumlah milivolt.

Sunting : Seperti yang ditunjukkan oleh Andrew Morton, ini menyediakan level 2048, sedangkan ada level 2049 milivolt termasuk 0. Jadi, untuk mewakili setiap bit dengan benar sebagai millivolt, Anda memerlukan bit tambahan. Namun jika Anda membulatkan secara konsisten, masih mungkin untuk membulatkan setiap elemen ke bawah dan mencapai 0-2047 mV, atau mengumpulkan dan memiliki 1-2048 mV. Jika Anda cocok 2048 hingga 2049 maka Anda kehilangan properti yang bagus langsung cocok dengan jumlah milivolt.

pengeras suara
sumber
3
Yang sangat berguna untuk pengukuran menggunakan pembanding. Salah satu alasan kami dapat membeli multimeter $ 5.
mckenzm
1
Ummm .... 11111111111 (binary) adalah 2047. Apakah itu berarti bahwa input nol ke DAC akan menghasilkan 1 mV, atau bahwa input 1024 akan menghasilkan 1024,5 mV?
Andrew Morton
Ah poin bagus! Yah itu cocok dengan jumlah level yang sama, tetapi dengan kesalahan satu kali.
loudnoises
Itu adalah kesalahan pagar-pos dan terbelah dua setiap kali Anda menambah jumlah bit per satu. (seperti halnya kesalahan kuantisasi).
Rodney
ADC roti dan mentega yang khas sebenarnya tampak 12bit, dan jika bit tinggi digunakan sebagai tanda, dan rentang tegangan dikonfigurasikan menjadi bipolar - berpusat di sekitar 0V, integer bertanda 12bit sebenarnya memiliki kisaran -2048 .. + 2047. Buat saya bertanya-tanya apakah referensi "biner genap" entah bagaimana dapat dikaitkan dengan akhir negatif dari kisaran :-)
frr
21

Referensi 4.096V dan 2.048V memungkinkan ADC untuk menghasilkan nilai integer dalam mV. Ini berarti setiap langkah ADC mewakili 1mV atau kelipatan integer 1mV. 4.096V = 2 ^ 12 mV

Lior Bilia
sumber
2
memungkinkan ADC 12 atau 11-bit, tepatnya.
jcaron
1
ADC resolusi yang lebih tinggi juga mendapat manfaat dari pengaturan semacam itu, tepatnya, perangkat lunak yang menggerakkan ADC ini dapat menggunakan bilangan bulat untuk mewakili 0,5mV, 0,25mV, dan sebagainya, bukannya variabel titik tetap.
Lior Bilia
Resolusi yang lebih tinggi dan lebih rendah ADC pasti mendapat manfaat dari pengaturan, tetapi untuk mendapatkan langkah 1 mV khusus seperti yang Anda nyatakan dalam jawaban Anda, Anda harus mencocokkan referensi dengan resolusi.
jcaron
Itu yang ideal, ya, tapi sayangnya tidak ada referensi 16.777216V di luar sana.
Lior Bilia
10

Alasan untuk ini adalah karena mereka dapat dengan mudah dibagi menjadi basis 2. Ini membuat mereka berguna untuk hal-hal seperti ADC di mana 12-bit ADC dengan rel antara 0 dan 4.096V akan berarti 1mV per bit, yang jauh lebih mudah jumlah.

Ada juga lebih banyak tegangan yang melakukan hal yang sama. Anda juga bisa mendapatkan referensi Tegangan di 1.024V, yaitu 2 10 . Referensi yang berbeda dapat digunakan untuk bit ADC yang berbeda.

Ingin tahu
sumber
5
Mengapa kita menggunakan referensi pada tegangan tersebut, bukan hanya 2V dan 4V

Ini bisa menguntungkan dalam keadaan yang tepat ketika mikrokontroler menampilkan nilai langsung ke manusia. Namun, sebagian besar waktu itu karena ada banyak orang di luar sana yang buruk dalam matematika atau tidak berhenti dan benar-benar berpikir.

Seperti orang lain telah menunjukkan, 2,048 = 2 11 /1000 dan 4,096 = 2 12 / 1.000. Jika Anda menggunakan A / D 12 bit dengan referensi 4.096 V, setiap hitungan adalah 1 mV.

Namun, berhentilah dan pertimbangkan kapan itu benar-benar penting. Tidak ada yang secara khusus spesial dengan satuan milivolt. Dalam hal fisika, mereka adalah unit yang sepenuhnya arbitrer untuk mengukur EMF.

Dalam sistem kontrol, misalnya, unit yang digunakan untuk berbagai jumlah yang diukur dapat berupa apa saja yang Anda suka, selama Anda tahu apa itu. Jika Anda menggunakan titik tetap, maka Anda ingin nilai maksimum hampir memenuhi angka, dan menggunakan bit yang cukup sehingga Anda memiliki resolusi yang diperlukan. Penskalaan unit harus ditentukan oleh representasi biner internal yang nyaman.

Bagaimanapun juga, pasti ada faktor-faktor perolehan yang bisa disesuaikan nanti dalam proses itu. Penskalaan kustom semua nilai input dapat disesuaikan dengan menggunakan berbagai nilai faktor keuntungan yang sudah ada, dan bahwa sistem sudah harus menangani nilai arbitrer dari. Tidak diperlukan perhitungan tambahan, hanya nilai yang berbeda yang dimasukkan ke dalam perhitungan yang sama.

Dalam beberapa kasus, sistem tertanam kecil ini perlu menampilkan nilai digital kepada manusia. Dalam hal ini, unit millivolt berguna ketika Anda ingin menunjukkan tegangan dengan tiga tempat desimal. Namun, antarmuka manusia pada dasarnya lambat dibandingkan dengan mikrokontroler. Umumnya Anda tidak ingin memperbarui tampilan digital lebih dari 2 Hz. Mengonversi angka menjadi angka desimal sudah membutuhkan aritmatika. Melakukan penskalaan beberapa nilai internal agar sesuai dengan resolusi yang ditampilkan adalah langkah tambahan yang relatif kecil untuk proses tersebut.

Kemudian pertimbangkan juga seberapa sering Anda benar-benar ingin mengukur tegangan di kisaran 0 hingga 4.095 V, atau setidaknya sebagian besar dari kisaran itu. Jika Anda ingin mengukur 0 hingga 5 V, maka referensi 4.096 benar-benar tidak membantu. Anda harus menipiskan sinyal ke dalam A / D, jadi membaca sinyal yang dilemahkan dalam satuan milivolt tidak memberikan keuntungan khusus, bahkan ketika menampilkan nilai digital.

Jadi singkatnya, di dunia saat ini dengan mikrokontroler yang menangani pembacaan A / D, referensi 2,048 dan 4,096 V sebagian besar memenuhi kebutuhan yang dirasakan , dan bagi para penyerang lutut yang tidak memikirkan masalah dengan baik.

Olin Lathrop
sumber
tidak semua orang yang membutuhkan pembagian 1V (atau bagiannya) menggunakan mikro-controller
Alnitak
memilih dan ada satu hal yang Anda lupa sebutkan - saya pikir - semua jawaban yang dibahas mengabaikan, bahwa 1024 ~ = 1000 <3% kesalahan dan lebih kecil 3% masih mahal dan sulit didapat (jika tou ingatkan seluruh sistem dalam pikiran )
halfbit