ADC resolutsiooni ja LSB kalkulaator
Analoog-digitaalmuunduri (ADC) valik ja integreerimine elektroonikasüsteemi nõuab selle teoreetiliste piiride täpset mõistmist. ADC resolutsiooni kalkulaator võimaldab kiiresti arvutada muunduri vähima tähendusrikka biti (LSB) sammu suuruse, kvantimismüra ja teoreetilise signaali-müra suhte (SNR). Tööriist toetab nii unipolaarseid kui ka bipolaarseid sisendvahemikke, võimaldab teisendada analoogpingeid digitaalseteks koodideks ja vastupidi ning aitab määrata vajalikku bittide arvu sihtmärgi lahendamiseks.
Kõik arvutused tehakse reaalajas ja tulemuste juures kuvatakse täielikud matemaatilised asendused, mis lihtsustavad valemite kontrollimist ja riistvara projekteerimist.
Kuidas kalkulaatorit kasutada
Süsteemi parameetrite analüüsimiseks sisestatakse tööriista järgmised algandmed:
- Resolutsioon N (bitti): Täisarv vahemikus 1 kuni 32 — muunduri nominaalne bittide arv.
- Tugipinge: Positiivne arv, mis määrab muunduri võrdluspinge taseme.
- Tugipinge ühik: Valitav pingeühik sisestatud tugipinge jaoks.
- Sisendvahemik: Valik kahe režiimi vahel: "Unipolaarne · 0 kuni Vref" või "Bipolaarne · −Vref kuni +Vref".
- Kuvatavad kümnendkohad: Määrab tulemustes näidatavate tüvenumbrite täpsuse.
- Teisenda (valikuline mõõtepunkt): Režiimi valik "Pinge → kood" või "Kood → pinge" vahel.
- Sisendpinge (valikuline): Pinge väärtus, mida soovitakse teisendada digitaalseks koodiks.
- Kood (loendused) (valikuline): Täisarv vahemikus 0 kuni muunduri kõrgeima koodini, mida soovitakse teisendada pingeks.
- Pingeühik: Mõõtepunkti sisend- või väljundpinge ühik.
- Vähim lahendatav muutus (valikuline): Sihtotstarbeline pinge samm, mille põhjal arvutatakse vajalik minimaalne bittide arv.
- Sammu ühik: Lahendatava muutuse ühik.
Sisestatud andmete kiireks testimiseks saab kasutada nuppu "Laadi näide", mis täidab väljad vaikeväärtustega, ning väljade lähtestamiseks nuppu "Tühjenda".
Arvutustulemused ja väljundnäitajad
Kalkulaator kuvab tulemused järgmiste täpsete siltide all:
Sammu suurus ja müra
- LSB sammu suurus: Vähima tähendusrikka biti pinge väärtus. Alammärgis näitab seda sammu protsendina täisskaalast ja ppm-des (miljondikosa täisskaalast).
- Kvantimistasemed: Diskreetsete tasemete koguarv, mis arvutatakse valemiga 2^N.
- Kõrgeim kood: Maksimaalne digitaalne väljundkood (2^N − 1).
- Täisskaala vahemik: Muunduri kogu mõõtepiirkonna pingeulatus (FSR).
- Maksimaalne kvantimisviga (±½ LSB): Teoreetiline maksimaalne viga, mis tekib pideva signaali ümardamisel lähimaks digitaalseks tasemeks.
- Kvantimismüra (rms): Ruutkeskmine kvantimismüra pinge.
- Ideaalne SNR (täisskaala siinus): Teoreetiline signaali-müra suhte ülempiir detsibellides.
- Dünaamiline ulatus: Teoreetiline dünaamiline ulatus detsibellides.
Mõõtepunktis
- Väljundkood: Pinge-koodi teisenduse tulemusena saadud digitaalne väärtus.
- Binaarne: Väljundkoodi esitus kahendsüsteemis.
- Heksadetsimaalne: Väljundkoodi esitus kuueteistkümnendsüsteemis.
- Koodi pinge: Digitaalsele koodile vastav täpne analoogpinge tase.
- Kvantimisviga: Erinevus tegeliku sisendpinge ja koodi pinge vahel.
- Selle koodi sisendaken: Pinge vahemik, mis teisendub konkreetseks digitaalseks koodiks.
Mitu bitti te vajate?
Kui sisestate väljale "Vähim lahendatav muutus" sihtväärtuse, kuvab kalkulaator hinnangu süsteemi sobivuse kohta. Kui valitud bittide arv on piisav, kinnitab kalkulaator, et see muundur sihtsammu katab. Kui resolutsioonist ei piisa, näidatakse, mitu bitti sihtsammu lahendamiseks vähemalt vaja on ja millise sammu praegune muundur veel lahendab.
Valemid ja asendused
Kalkulaator näitab iga arvutuse matemaatilist tuletuskäiku, asendades sümbolid kasutaja sisestatud arvudega:
- Kvantimistasemed: Tasemed = 2^N
- Täisskaala vahemik (unipolaarne): FSR = Vref
- Täisskaala vahemik (bipolaarne): FSR = 2 × Vref
- LSB sammu suurus: LSB = FSR ÷ 2^N
- Maksimaalne kvantimisviga: Maksimaalne kvantimisviga = ±LSB ÷ 2
- Kvantimismüra (rms): Kvantimismüra (rms) = LSB ÷ √12
- Ideaalne SNR (täisskaala siinus): SNR = 6.02 × N + 1.76
- Dünaamiline ulatus: Dünaamiline ulatus = 6.02 × N
- Unipolaarne kood: kood = round(Vin ÷ LSB)
- Bipolaarne kood: kood = round((Vin + Vref) ÷ LSB)
- Unipolaarne pinge: V = kood × LSB
- Bipolaarne pinge: V = kood × LSB − Vref
- Kvantimisviga mõõtepunktis: Kvantimisviga = koodi pinge − sisendpinge
- Resolutsiooni valik: N ≥ log₂(FSR ÷ samm)
Näidisarvutus 12-bitise muunduriga
Laadides näidise (12 bitti, 3,3 V tugipinge, unipolaarne vahemik), saame järgmised väärtused:
- Kvantimistasemed: 4096
- Kõrgeim kood: 4095
- LSB sammu suurus: 3,3 V ÷ 4096 ≈ 805,6641 µV
- Maksimaalne kvantimisviga: ±402,832 µV
- Kvantimismüra: ≈ 232,5752 µV rms
- Ideaalne SNR: ≈ 74,01 dB
- Dünaamiline ulatus: ≈ 72,25 dB
Kui sisendpingeks määratakse täpselt keskskaala väärtus 1,65 V, kuvatakse teade: "Täpselt keskskaala: pool vahemikust teisendub koodiks 2048 nulli kvantimisveaga." Väljundkoodiks kujuneb 2048 (binaarselt 1000 0000 0000, heksadetsimaalselt 0x800).
Piirangud ja erijuhtumid
Kalkulaator kasutab idealiseeritud kvantimismudelit, kus esimene koodi üleminek toimub täpselt poole LSB sammu peal (½ LSB) ja LSB suurus on defineeritud suhtena FSR ÷ 2^N.
Reaalsetes rakendustes tuleb arvestada järgmiste asjaoludega:
- Ideaalne vs. reaalne ADC: Kõik arvutatud näitajad kirjeldavad täiuslikku muundurit. Reaalne ADC lisab süsteemi integraalse (INL) ja diferentsiaalse (DNL) mittelineaarsuse, nihke- ja võimendusteguri vead ning triivi. Samuti mõjutab tulemust tugipinge enda stabiilsus ja müra. Seetõttu on kalkulaatori antud SNR, dünaamiline ulatus ja ±½ LSB piirang teoreetilised maksimumid, mitte garanteeritud mõõtetulemused.
- Sisendi piiramine (clipping): Kui sisendpinge ületab lubatud piire, satub muundur küllastusse.
- Ülemise piiri ületamisel kuvatakse hoiatus: "Sisend on üle ülemise siini: väljund küllastub kõrgeimal koodil ja kuvatav viga on tegelik jääkviga — piirang ±½ LSB enam ei kehti." Valemite osas märgitakse, et sisend on väljaspool sisendvahemikku ja kood piiratakse.
- Alumise piiri ületamisel kuvatakse hoiatus: "Sisend on allpool alumist siini: väljund küllastub koodil 0 ja kuvatav viga on tegelik jääkviga — piirang ±½ LSB enam ei kehti."
Privaatsus ja andmetöötlus
Kõik teie sisestatud arvud jäävad sellesse brauserisse – midagi ei laadita üles. Arvutused tehakse täielikult kasutaja seadmes, tagades andmete kohaliku töötlemise.
Korduma kippuvad küsimused
Kas 12-bitine resolutsioon tähendab 12-bitist täpsust?
Ei. Resolutsioon näitab vaid koodi laiust — kui peeneks on vahemik jaotatud. Täpsust piiravad muunduri INL ja nihke-/võimendusteguri vead, tugipinge tolerants ja müra ning seda ümbritsev vooluring. Seetõttu märgitakse andmelehtedel ENOB: 12-bitine SAR tagab tavaliselt 10–11 efektiivset bitti. Siin kuvatav ideaalne SNR 74 dB on teoreetiline lagi, mida ükski reaalne 12-bitine muundur ei saavuta.
Kuidas muudab arvutust ±Vref sisend?
Vahemik kahekordistub väärtuseni 2 × Vref, mistõttu sama muundur lahendab kaks korda laiemaid samme: LSB = 2 × Vref ÷ 2^N. Koodid ulatuvad negatiivsest siinist positiivseni — kood 0 on −Vref, keskmine kood 2^(N−1) on 0 V ja kõrgeim kood asub ühe sammu võrra allpool +Vref. Valige ülevalt bipolaarne vahemik ja null volti langeb täpselt keskmisele koodile.
Miks jagavad mõned allikad väärtusega 2^N ja teised väärtusega 2^N − 1?
Tegemist on sama muunduri kahe erineva mudeliga. Andmelehed ja klassikaline kvantimisteooria defineerivad LSB = FSR ÷ 2^N, kus esimene koodi üleminek toimub poole sammu peal — seda mudelit kasutab ka see leht. Kuju Vref ÷ (2^N − 1) tuleneb kõrgeima koodi viimisest täpselt väärtusele Vref, mis on tavaline mikrokontrollerite õpetustes. 12 biti juures erinevad need kaks umbes 0.02%, mis on palju väiksem kui mis tahes reaalse tugipinge tolerants; lihtsalt ärge segage neid kahte eri allikate andmete võrdlemisel.
Mida teha, kui sammu suurus on liiga jäme?
Ülediskreetimine ja keskmistamine parandavad resolutsiooni, kui signaalis on veidi müra: 4× rohkem proove annab juurde umbes ühe efektiivse biti, 16× annab kaks bitti, eeldusel, et müra on valge ja korreleerimata — täiesti puhas ja liikumatu signaal kordab lihtsalt sama koodi. Sellest edasi tuleks üle minna suurema bittide arvuga muundurile või lisada programmeeritava võimendusega aste, et signaal täidaks suurema osa vahemikust.