AD omvandlare värde!

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
olssoninc
Inlägg: 69
Blev medlem: 8 maj 2004, 10:41:08
Ort: Mitten av sverige

AD omvandlare värde!

Inlägg av olssoninc »

Har haft en hetsig diskusion nu om AD omvandlar värden och behöver lite hjälp att överbevisa vad som är rätt eller fel.

Vi håller på mäter en 0-5V signal med en 10 bitars AD och en av oss påstår att om spänning 2.5V mäts så kommer bit värde 511 och 512 vara lika medans den andra påstår att värde 511 representerar 2.5V. Vilket påstående är rätt och hur bevisas det?


//Olssoninc
Användarvisningsbild
strombom
Inlägg: 3305
Blev medlem: 27 maj 2003, 10:50:20
Ort: Västra Götaland
Kontakt:

Inlägg av strombom »

Förutsatt att referensvärdena på AD:n verkligen är 0 och 5 volt så borde 0V representeras av 0 och 5V av 1023. Jag hävdar att AD:n kommer fladdra mellan 511 och 512 om man har "exakt" 2.5V......

1023/5 * 2.5 = 511.5
Användarvisningsbild
Icecap
Inlägg: 26151
Blev medlem: 10 januari 2005, 14:52:15
Ort: Aabenraa, Danmark

Inlägg av Icecap »

strombom har relativt rätt ;-)

Om förutsättningarna är som strombom beskriver gäller samt att AD-omvandlaren är helt linjär (alltså perfekt):
Varje steg är värd 5/1024V = 4,8828125mV. Detta ger att man kan säga såhär:
0x000 = 0,0000000 - 4,8828124mV
0x001 = 4,8828125 - 9,7656249mV
0x002 = 9,7656250 - 14,6484374mV
osv.

Alltså representerar 511 och 512 olika värden men då 2,5V är så pass grovt värde kommer de nog att fladdra precis som strombom skrivar.

Hade det varit 2,500000V och en total felfri AD kan man säga vad den skulle ge av värde ut men läs datablad och förstå att man kan höfta ganska bra men inte exakt.
olssoninc
Inlägg: 69
Blev medlem: 8 maj 2004, 10:41:08
Ort: Mitten av sverige

Inlägg av olssoninc »

Strombom du delar med 1023 vilket är talet som representerar pos 1024. Om man antar att 0 är en possition.

Om man instället delar med antalet positioner (1024)

så 5/1024 * 2.5 =512 dvs pos 512 som är bit värde 511.

Är jag helt ute och cyklar?
Användarvisningsbild
sodjan
EF Sponsor
Inlägg: 43178
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Kontakt:

Inlägg av sodjan »

Vad är *igentligen* problemet ?

Hela diskussionen är oerhört teoretisk och frågan om 2.5 V motsvarar
511 eller 512 (eller 511.5) är i praktiken oftast ganska ointressant...

Dessutom så brukar databladet ha en tydlig beskrivning över hur
"stegen" fördelas samt hur brytpunkterna mellan de olika stegen beräknas.

I princip alla ADC'er i dag är monotona (d.v.s att de aldrig stegar "bakåt"),
men stegen i sig kan vara olika långa/höga.

Strombon> Jag hävdar att AD:n kommer fladdra mellan 511 och 512 om man har "exakt" 2.5V......

I *praktiken* (om man inte har en väldigt "bra" analog koppling) så kommer
värdet att fladdra över kanske 3-4 steg...

Men som sagt, om man vill ha ett rent teoretiskt svar, så har databladet det ! :-)
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Inlägg av vfr »

Eftersom det var en teoretisk diskussion om funktionsprinciper från början så är det väl helt ok att den faktiskt är teoretisk, tycker jag.

De AD-omvandlare som jag jobbat praktiskt med har haft att fullt skalutslag = VH - 1LSB. D.v.s i det här fallet skulle VH motsvara värdet 1024 som inte går att representera utan det högsta möjliga värdet blir då 1023 som är VH - 1LSB. Svaret på frågan blir då exakt 512 för 2,5V.

Så fungerar t.ex. AD-omvandlaren i HC11-processorn som var den jag hade närmast till hands att titta på just nu. Därmed inte sagt att alla omvandlare måste fungera på det sättet även om jag har för mig att det var så det lärdes ut när man pluggade en gång i tiden. Skall man ha ett bättre svar än det så får man nog välja en eller flera faktiska omvandlare och, som Sodjan säger, kolla i databladen.
olssoninc
Inlägg: 69
Blev medlem: 8 maj 2004, 10:41:08
Ort: Mitten av sverige

Inlägg av olssoninc »

Den processor som jag arbetar med är en HC12D64 vilket jag då borde anta att AD:ns värde 512 motsvarar 2.5 Volt.
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Inlägg av vfr »

Om uppbyggnaden motsvarar HC11:ans omvandlare så kan man ju anta det. Men det finns bara ett sätt att vara säker...
Användarvisningsbild
sodjan
EF Sponsor
Inlägg: 43178
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Kontakt:

Inlägg av sodjan »

Se även :
http://www.freescale.com/files/microcon ... AN2438.pdf
("ADC Definitions and Specifications")
Användarvisningsbild
Andax
Inlägg: 4373
Blev medlem: 4 juli 2005, 23:27:38
Ort: Jönköping

Re: AD omvandlare värde!

Inlägg av Andax »

olssoninc skrev:Har haft en hetsig diskusion nu om AD omvandlar värden och behöver lite hjälp att överbevisa vad som är rätt eller fel.

...och en av oss påstår...
Ville du avvakta svaren här innan du avslöjar vad DU trodde? :D Kunde inte hålla mig!
Användarvisningsbild
sodjan
EF Sponsor
Inlägg: 43178
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Kontakt:

Inlägg av sodjan »

> Den processor som jag arbetar med är en HC12D64 vilket jag då borde anta
> att AD:ns värde 512 motsvarar 2.5 Volt.

Kanske rent teoretiskt så som diskussionen i tråden började.

Men om man tittar på en specifik processor/ADC, så gäller naturligtsvis
de praktiska begränsningar och felnivåer som databladet specificerar.
Bl.a ett upp till +/- 2.5 bitars fel i alla ADC mätningar. Mer *garanterar*
inte Freescale (men sannolikt är felet normalt lite lägre).

Vilket är det du vill veta ?

Att bygga en applikation som förutsätter ett visst *exakt* förhållande
mellan en viss inspänning och ett visst digitaliserat värde är lite farligt...

PS: Jag hittade inte HC12D64, utan kollade HC12D60 istället. Jag tror
dock inte att det är någon avgörande skillnad...
Skriv svar