ADC-opløsningsberegner

Indtast en ADC's bit og referencespænding for at få dens trinstørrelse, kvantiseringsfejl og ideelle SNR, konvertere mellem volt og koder samt følge hvert beregningstrin.

Konverter og område

Heltal fra 1 til 32 — konverterens nominelle bitbredde.
Indgangsområde

Målepunkt (valgfrit)

Lad stå tom for at springe målingen over.

Hvor mange bit har du brug for? (valgfrit)

Trinstørrelse og støj

LSB-trinstørrelse

Formler og indsættelse

LSB = FSR ÷ 2ᴺ · maks. fejl = ½ LSB · SNR = 6.02N + 1.76 dB

    Alle tal, du indtaster, bliver i denne browser – intet uploades.

    FAQ

    Hvorfor dividerer nogle kilder med 2^N og andre med 2^N − 1?

    De er to forskellige modeller af den samme konverter. Datablade og den klassiske kvantiseringsteori definerer LSB = FSR ÷ 2^N, med den første kodeovergang ved et halvt trin — det er den model, denne side bruger. Formlen Vref ÷ (2^N − 1) kommer fra at afbilde den øverste kode præcis på Vref, hvilket er almindeligt i mikrocontroller-vejledninger. Ved 12 bit afviger de to med ca. 0.02%, hvilket er langt under enhver reel references tolerance; du skal blot undgå at blande de to sammen, når du sammenligner tal fra forskellige kilder.

    Betyder 12-bit opløsning 12-bit nøjagtighed?

    Nej. Opløsning er kun kodens bredde — hvor fint området er opdelt. Nøjagtigheden begrænses af konverterens INL og offset-/forstærkningsfejl, referencens tolerance og støj samt kredsløbet omkring den. Det er derfor, datablade angiver ENOB: en 12-bit SAR leverer typisk 10–11 effektive bit. Den ideelle SNR på 74 dB, der vises her, er det loft, som ingen reel 12-bit konverter når.

    Hvordan ændrer en ±Vref-indgang matematikken?

    Spændingsområdet fordobles til 2 × Vref, så den samme konverter opløser trin, der er dobbelt så brede: LSB = 2 × Vref ÷ 2^N. Koderne går fra den negative forsyningsskinne til den positive — kode 0 er −Vref, den midterste kode 2^(N−1) er 0 V, og den øverste kode ligger ét trin under +Vref. Vælg det bipolære område ovenfor, og nul volt vil lande præcis på den midterste kode.

    Hvad kan jeg gøre, når trinstørrelsen er for grov?

    Oversampling og midling giver bedre opløsning, når signalet indeholder en smule støj: Midling af 4× så mange målinger giver ca. én effektiv bit mere, 16× giver to, forudsat at støjen er hvid og ukorreleret — et helt rent, helt stillestående signal gentager blot den samme kode. Derudover skal du skifte til en konverter med flere bit eller tilføje et trin med programmerbar forstærkning, så signalet fylder mere af området.

    Beregning af ADC-opløsning, trinstørrelse og støj

    Når analoge signaler skal omsættes til digitale værdier, bestemmer analog-til-digital-konverterens (ADC) opløsning og referencespænding de fundamentale grænser for systemets præcision. ADC-opløsningsberegneren bestemmer en konverters LSB-trinstørrelse, maksimale kvantiseringsfejl og teoretiske signal-to-noise ratio (SNR) baseret på bitbredden og referencespændingen. Værktøjet understøtter både unipolære og bipolære indgangsområder, udfører tovejskonvertering mellem spændinger og digitale koder samt beregner den nødvendige bitopløsning for at registrere en specifik spændingsændring.

    Alle beregninger udføres direkte med fuldt udskrevne matematiske mellemregninger, hvilket gør det nemt at eftervise formlerne og analysere de teoretiske grænser for signalkæden.


    Konverterens parametre og indgangsområder

    For at beregne de grundlæggende værdier kræver værktøjet følgende indtastninger under Konverter og område:

    • Opløsning N (bit): Et helt tal fra 1 til 32, der angiver konverterens nominelle bitbredde.
    • Referencespænding: En positiv værdi, der definerer referencespændingen (Vᵣef).
    • Indgangsområde: Valg mellem "Unipolær · 0 til Vref" og "Bipolær · −Vref til +Vref".

    Unipolært vs. bipolært område

    Konfigurationen af indgangsområdet ændrer det fulde spændingsspænd (FSR, Full-Scale Range) og måden, de digitale koder afbildes på:

    • Unipolær · 0 til Vref: Det fulde udslagsområde svarer til referencespændingen (FSR = Vᵣef). Indgangsspændingen løber fra 0 V til Vᵣef.
    • Bipolær · −Vref til +Vref: Det fulde udslagsområde fordobles (FSR = 2 × Vᵣef). Indgangsspændingen løber fra -Vᵣef til +Vᵣef. Den digitale kode 0 repræsenterer -Vᵣef, den midterste kode 2^(N-1) repræsenterer 0 V, og den øverste kode repræsenterer spændingen ét trin under +Vᵣef.

    Trinstørrelse og støj

    Under sektionen Trinstørrelse og støj beregner værktøjet de teoretiske grænser for en ideel kvantiseringsmodel, hvor den første kodeovergang sker ved et halvt trin (1 / 2 LSB). Resultaterne vises med følgende labels:

    • LSB-trinstørrelse: Den mindste spændingsændring, der svarer til ét digitalt trin (Least Significant Bit). Værktøjet viser også denne værdi som en procentdel af det fulde udslag samt i ppm (parts-per-million).
    • Kvantiseringsniveauer: Det samlede antal diskrete niveauer, som konverteren kan opdele signalet i (2^N).
    • Øverste kode: Den maksimale digitale udgangsværdi (2^N - 1).
    • Fuldt udslagsområde: Den samlede spændingsvidde (FSR) for konverteren.
    • Maks. kvantiseringsfejl (±½ LSB): Den maksimale teoretiske afvigelse mellem den analoge indgangsspænding og den digitale repræsentation i det lineære område.
    • Kvantiseringsstøj (rms): Den effektive (root-mean-square) kvantiseringsstøj spænding.
    • Ideel SNR (fuldt udslag, sinus): Det teoretiske loft for signal-støj-forholdet angivet i decibel.
    • Dynamikområde: Det teoretiske dynamikområde i decibel.

    Eksempel på beregning (12-bit unipolær)

    Hvis du indlæser eksemplet med en 12-bit konverter, en referencespænding på 3.3 V og et unipolært område, giver det følgende resultater:

    • Kvantiseringsniveauer: 2¹² = 4096 niveauer.
    • Øverste kode: 4095.
    • LSB-trinstørrelse: 3.3 V ÷ 4096 ≈ 805.6641 µV.
    • Maks. kvantiseringsfejl (±½ LSB): ± 402.832 µV.
    • Kvantiseringsstøj (rms): 805.6641 µV ÷ √(12) ≈ 232.5752 µV rms.
    • Ideel SNR (fuldt udslag, sinus): 6.02 × 12 + 1.76 ≈ 74.01 dB.
    • Dynamikområde: 6.02 × 12 ≈ 72.25 dB.

    Konvertering ved målepunktet

    Under Målepunkt (valgfrit) kan du foretage tovejsberegninger for en specifik værdi:

    Spænding → kode

    Når du indtaster en indgangsspænding, beregner værktøjet den tilhørende digitale værdi. Konverteringen anvender afrundingsformlen round(Vin ÷ LSB) for unipolære signaler og round((Vin + Vref) ÷ LSB) for bipolære signaler.

    Under Ved målepunktet vises:

    • Udgangskode: Den resulterende digitale værdi i titalsystemet.
    • Binær: Den binære repræsentation af koden.
    • Heksadecimal: Den heksadecimale repræsentation af koden.
    • Kodespænding: Den nøjagtige spænding, som den fundne digitale kode repræsenterer.
    • Kvantiseringsfejl: Forskellen mellem kodespændingen og den faktiske indtastede indgangsspænding.
    • Indgangsvindue for denne kode: Det spændingsinterval, der afbildes til denne specifikke kode.

    Håndtering af grænseværdier og klipning

    • Overstyring i den høje ende: Hvis indgangsspændingen ligger over den øverste grænse, mættes udgangen ved den øverste kode (2^N - 1). Værktøjet viser advarslen: "Indgangen ligger over den øverste grænse: Udgangen mættes ved den øverste kode, og den viste fejl er den reelle restfejl — grænsen på ±½ LSB gælder ikke længere."
    • Overstyring i den lave ende: Hvis indgangsspændingen ligger under den nederste grænse, mættes udgangen ved kode 0. Værktøjet viser advarslen: "Indgangen ligger under den nederste grænse: Udgangen mættes ved kode 0, og den viste fejl er den reelle restfejl — grænsen på ±½ LSB gælder ikke længere."
    • Præcis midt i området: Hvis indgangsspændingen rammer præcis midt i det fulde spændingsspænd (f.eks. 1.65 V i eksemplet ovenfor), vises meddelelsen: "Præcis midt i området: Halvdelen af spændingsområdet afbildes til kode 2048 med nul kvantiseringsfejl."

    Kode → spænding

    Hvis du i stedet vælger "Kode → spænding" og indtaster en digital værdi, beregner værktøjet den tilhørende kodespænding ud fra formlen V = kode × LSB (unipolær) eller V = kode × LSB - Vᵣef (bipolær).


    Dimensionering af bitopløsning

    Hvis du indtaster en målværdi i feltet Mindste ændring, der skal opløses, beregner værktøjet den nødvendige bitbredde for at kunne registrere denne ændring:

    N ≥ log₂(FSR ÷ trin)

    Resultatet rundes op til nærmeste hele antal bit. Værktøjet viser en statusbesked, der angiver, om den nuværende valgte bitbredde er tilstrækkelig:

    • Hvis den valgte opløsning er stor nok: "At opløse ‹step› kræver mindst ‹bits› bit — denne ‹current›-bit konverter dækker det."
    • Hvis den valgte opløsning er for lille: "At opløse ‹step› kræver mindst ‹bits› bit — denne ‹current›-bit konverter opløser kun ‹lsb›."

    Formler og matematisk indsættelse

    Værktøjet viser de rå formler samt de specifikke beregninger, hvor dine indtastede værdier er sat ind:

    • Kvantiseringsniveauer: Niveauer = 2^N
    • Fuldt udslagsområde (unipolær): FSR = Vᵣef
    • Fuldt udslagsområde (bipolær): FSR = 2 × Vᵣef
    • LSB-trinstørrelse: LSB = FSR ÷ 2^N
    • Maks. kvantiseringsfejl: ± LSB ÷ 2
    • Kvantiseringsstøj (rms): LSB ÷ √(12)
    • Ideel SNR (fuldt udslag, sinus): SNR = 6.02 × N + 1.76 dB
    • Dynamikområde: 6.02 × N dB
    • Unipolær kode: kode = round(Vᵢₙ ÷ LSB)
    • Bipolær kode: kode = round((Vᵢₙ + Vᵣef) ÷ LSB)
    • Unipolær kodespænding: V = kode × LSB
    • Bipolær kodespænding: V = kode × LSB - Vᵣef
    • Kvantiseringsfejl ved målepunktet: kodespænding - indgangsspænding
    • Opløsningsdimensionering: N ≥ log₂(FSR ÷ trin) (rundet op til næste hele bit)

    Fortrolighed og databehandling

    Alle tal, du indtaster, bliver i denne browser – intet uploades. Beregningerne udføres udelukkende lokalt på din egen enhed i browseren.


    Ofte stillede spørgsmål (FAQ)

    Betyder 12-bit opløsning 12-bit nøjagtighed?

    Nej. Opløsning er kun kodens bredde — hvor fint området er opdelt. Nøjagtigheden begrænses af konverterens INL og offset-/forstærkningsfejl, referencens tolerance og støj samt kredsløbet omkring den. Det er derfor, datablade angiver ENOB: en 12-bit SAR leverer typisk 10–11 effektive bit. Den ideelle SNR på 74 dB, der vises her, er det loft, som ingen reel 12-bit konverter når.

    Hvordan ændrer en ±Vref-indgang matematikken?

    Spændingsområdet fordobles til 2 × Vref, så den samme konverter opløser trin, der er dobbelt så brede: LSB = 2 × Vref ÷ 2^N. Koderne går fra den negative forsyningsskinne til den positive — kode 0 er −Vref, den midterste kode 2^(N−1) er 0 V, og den øverste kode ligger ét trin under +Vref. Vælg det bipolære område ovenfor, og nul volt vil lande præcis på den midterste kode.

    Hvorfor dividerer nogle kilder med 2^N og andre med 2^N − 1?

    De er to forskellige modeller af den samme konverter. Datablade og den klassiske kvantiseringsteori definerer LSB = FSR ÷ 2^N, med den første kodeovergang ved et halvt trin — det er den model, denne side bruger. Formlen Vref ÷ (2^N − 1) kommer fra at afbilde den øverste kode præcis på Vref, hvilket er almindeligt i mikrocontroller-vejledninger. Ved 12 bit afviger de to med ca. 0.02%, hvilket er langt under enhver reel references tolerance; du skal blot undgå at blande de to sammen, når du sammenligner tal fra forskellige kilder.

    Hvad kan jeg gøre, når trinstørrelsen er for grov?

    Oversampling og midling giver bedre opløsning, når signalet indeholder en smule støj: Midling af 4× så mange målinger giver ca. én effektive bit mere, 16× giver to, forudsat at støjen er hvid og ukorreleret — et helt rent, helt stillestående signal gentager blot den samme kode. Derudover skal du skifte til en konverter med flere bit eller tilføje et trin med programmerbar forstærkning, så signalet fylder mere af området.