A/D-omv. upplösning. Vad gäller???????
A/D-omv. upplösning. Vad gäller???????
När man läser i olika böcker får man olika förklaringar till hur en A/D-omv. upplösning beräknas. Om man för enkelhetens skull tänker sig en 3-bitars A/D som skall omvandla spänningar mellan 0-5 V så finns följande två förklaringar:
1. Upplösningen är 5/(2^3)=5/8=625 mV
Detta innebär att att A/D-omv. kommer att ge sitt högsta värde 111 redan innan inspänningen når 5 V.
2. Upplösningen är 5/(2^3-1)=5/7~714mV.
Detta innebär att A/D-omv. kommer att ge sitt högsta värde först då inspänningen är max, dvs. 5 V.
Min uppfattningen är att det är den första förklaringen som är korrekt men hur är det egentligen???
Tacksam för svar!
1. Upplösningen är 5/(2^3)=5/8=625 mV
Detta innebär att att A/D-omv. kommer att ge sitt högsta värde 111 redan innan inspänningen når 5 V.
2. Upplösningen är 5/(2^3-1)=5/7~714mV.
Detta innebär att A/D-omv. kommer att ge sitt högsta värde först då inspänningen är max, dvs. 5 V.
Min uppfattningen är att det är den första förklaringen som är korrekt men hur är det egentligen???
Tacksam för svar!
- JimmyAndersson
- Inlägg: 26470
- Blev medlem: 6 augusti 2005, 21:23:33
- Ort: Oskarshamn (En bit utanför)
- Kontakt:
Tänker högt:
BIT = VOLT
000 = 0 mV
001 = 625 mV
010 = 1250
011 = 1875
100 = 2500
101 = 3125
110 = 3750
111 = 4375 mV ..nähepp.
Men om 000 = 625mV så blir det rätt, men fungerar det så?
Borde inte "ingen bit" ge "ingen volt" ?
Test med 714mV:
BIT = VOLT
000 = 0 mV
001 = 714
010 = 1428
011 = 2142
100 = 2856
101 = 3570
110 = 4284
111 = 4998 mV ..och vart tog de övriga 2mV vägen?
edit: Aha, magnus avrundade...
Enligt mig så är Alternativ 2 det "rätta".
BIT = VOLT
000 = 0 mV
001 = 625 mV
010 = 1250
011 = 1875
100 = 2500
101 = 3125
110 = 3750
111 = 4375 mV ..nähepp.
Men om 000 = 625mV så blir det rätt, men fungerar det så?
Borde inte "ingen bit" ge "ingen volt" ?
Test med 714mV:
BIT = VOLT
000 = 0 mV
001 = 714
010 = 1428
011 = 2142
100 = 2856
101 = 3570
110 = 4284
111 = 4998 mV ..och vart tog de övriga 2mV vägen?

edit: Aha, magnus avrundade...

Enligt mig så är Alternativ 2 det "rätta".
Vissa ADC'er har ett "halvsteg" i början och i slutet. Så för att ta exemplet
med 0-5 V och 3 bitar (8 steg) (lite avrundade värden) :
0.000 - 0.357 : 000 (Steg = .0357)
0.357 - 1.071 : 001 (Steg = .0714)
1.071 - 1.786 : 010 (Steg = .0714)
1.786 - 2.500 : 011 (Steg = .0714)
2.500 - 3.214 : 100 (Steg = .0714)
3.214 - 3.929 : 101 (Steg = .0714)
3.929 - 4.643 : 110 (Steg = .0714)
4.643 - 5.000 : 111 (Steg = .0357)
På detta sätter kommer t.ex resultatet "001" att omfatta
ett *avrundat* intervall som ligger lika mycket över som
under det korrekta, inte bara en signal om att spänningen
har passerat en viss gräns.
Så med denna modell är varken "1" eller "2" rätt...
Det liknar "2", om man tar halva intervallet för "111" och lägger
det längst ner.
Denna modell ger också det lägsta absoluta felet för alla inspänningar
(alltså max +/- 0.5 LSB). Model "2" ovan ger upp till +/- 1.0 LSB, och
dessutom alltid "+" eller "-" beroende på hur man lägger skalan.
Modellen ovan är mer "ballanserad"...
med 0-5 V och 3 bitar (8 steg) (lite avrundade värden) :
0.000 - 0.357 : 000 (Steg = .0357)
0.357 - 1.071 : 001 (Steg = .0714)
1.071 - 1.786 : 010 (Steg = .0714)
1.786 - 2.500 : 011 (Steg = .0714)
2.500 - 3.214 : 100 (Steg = .0714)
3.214 - 3.929 : 101 (Steg = .0714)
3.929 - 4.643 : 110 (Steg = .0714)
4.643 - 5.000 : 111 (Steg = .0357)
På detta sätter kommer t.ex resultatet "001" att omfatta
ett *avrundat* intervall som ligger lika mycket över som
under det korrekta, inte bara en signal om att spänningen
har passerat en viss gräns.
Så med denna modell är varken "1" eller "2" rätt...

Det liknar "2", om man tar halva intervallet för "111" och lägger
det längst ner.
Denna modell ger också det lägsta absoluta felet för alla inspänningar
(alltså max +/- 0.5 LSB). Model "2" ovan ger upp till +/- 1.0 LSB, och
dessutom alltid "+" eller "-" beroende på hur man lägger skalan.
Modellen ovan är mer "ballanserad"...
Exile har nog rätt, men om tråden gäller AVR så var den väll lite onödig (tråden alltså),
det var väl bara att slå upp i databladet. Jag tolkade det som lite mer generellt frågat...
Jag har sätt halvstegs metoden (för att få en bättre "avrundning" av värden)
främst hos lite mer high-perf ADC'er från Texas...
det var väl bara att slå upp i databladet. Jag tolkade det som lite mer generellt frågat...
Jag har sätt halvstegs metoden (för att få en bättre "avrundning" av värden)
främst hos lite mer high-perf ADC'er från Texas...