minimal messbare Analogspannung Attiny861A

#4076414
Lesenswert?

Hallo,

gibt es eine minimale, real nutzbare Eingangsspannung für den ADC im 
Attiny861A im unipolaren differentiellen Mode mit 32facher Verstärkung 
und 2,56V-Referenzspannung? Offset- und Verstärkungsfehler würde ich 
jetzt mal ignorieren, weil man dies rauskalibrieren kann.
Rein theoretisch müsste es ja 2,56V / (1024 * 32) = 78,125µV sein oder?
Ist das praktisch gesehen ein realistischer Wert?

Danke und Grüße, Nico
Gast #4077167
Lesenswert?

Hi

>Was meint ihr? Die Auflösung ist doch 10Bit. Gain- und Offset-Error
>bekommt man doch durch Abgleich hin!
>Ich will Strom über einen Shunt messen und habe sehr kleine Spannungen
>zu messen.

Hast du das schon mal gemacht? Also Offset-, Gain-, nichtlineare 
Verhalten kompensieren:

http://www.atmel.com/Images/Atmel-8456-8-and-32-bit-AVR-Microcontrollers-AVR127-Understanding-ADC-Parameters_Application-Note.pdf

http://www.atmel.com/Images/doc2559.pdf

MfG Spess
#4077168
Lesenswert?

Ulrich H. schrieb:
> Wenn die Spannung wirklich klein ist, sollte man die eher mit einem
> externen Verstärker Verstärken. Ein MCP6V31 oder ähnliches würde sich
> anbieten.
>
> Den Offset kann man im unipolaren Mode nicht unbedingt so einfach
> abgleichen, der kann ggf. negativ sein. Außerdem kann der Offset von der
> Temperatur abhängen.

Einen negativen Offset kann man doch sehr gut kompensieren durch 
Addition! Oder?
#4077173
Lesenswert?

spess53 schrieb:
> Hi
>
>>Was meint ihr? Die Auflösung ist doch 10Bit. Gain- und Offset-Error
>>bekommt man doch durch Abgleich hin!
>>Ich will Strom über einen Shunt messen und habe sehr kleine Spannungen
>>zu messen.
>
> Hast du das schon mal gemacht? Also Offset-, Gain-, nichtlineare

Aber die Auflösung ist 10Bit, richtig? Offset lässt sich durch Addition 
und Gain durch Multiplikation kompensieren. Nichtlineare Fehler sind 
natürlich schwierig.
(Firma: matzetronics) #4077508
Lesenswert?

Ich messe mit dem Tiny25/45/85 die Thermospannung in meinem Lötkolben, 
so das ich sagen kann, das er schon sehr kleine Spannungen erkennt.
Allerdings ziehe ich mittels Widerständen die Differenzeingänge etwas 
von der GND Rail weg, da ich dem eingebauten Opamp echtes Rail-To-Rail 
nicht zutraue. Wie genau das ist?
Keine Ahnung, die gemessenen Spannungen stimmen allerdings recht gut mit 
den Spannungen überein, die ein Thermoelement dieses Types bei gegebener 
Temperatur liefern soll. Der Offsetabgleich sollte allerdings vorher 
gemacht werden.
Angehängte Dateien:
Gast #4077529
Lesenswert?

Nico ... schrieb:
> Aber die Auflösung ist 10Bit, richtig? Offset lässt sich durch Addition
> und Gain durch Multiplikation kompensieren. Nichtlineare Fehler sind
> natürlich schwierig.

Das Signal rauscht, die Referenz rauscht. Alleine durch die Referenz 
(wenn du hier VCC verwendest) bekommst du ein paar LSB Rauschen rein. Da 
berauscht sich der µC nämlich selber. Und das kann man durch keine 
Maßnahmen untebinden. Weil der Tiny vermutlich keinen Anschluss für eine 
externe Referenz oder AVDD hat, kann man auch wenig tun.
Wenn du auf sagen wir 4LSB Pkpk rauschen hinkommst, hast du schon sehr 
sauber gearbeitet. Sogar 6LSB sind nicht unüblich.
Das wären dann 2-3Bit Verlust an Auflösung NUR durch das Rauschen.

Bei extrem kleinen Spannungen kommt dazu, das der Offset eventuell zu 
einem Überlauf des Messwertes führt - sehr kleine Ströme werden dadurch 
fallweise groß.

--> Spannung direkt am Shunt klappt nur bei großen Shunts und höheren 
Spannungen. Z.b. 100mV bei Nennstrom oder so.

Besser man tut das analog vorbehandeln. Schau dir mal den INA138 an.

PS:
Vorsicht mit Rail2Rail, das ist meistens nur Marketinggewäsch. Das muss 
man auf dem Steckbrett ausprobieren. Auf Tuchfühlung mit GND gibs die 
lustigsten Nebeneffekte ;-)
#4077691
Lesenswert?

Ich nutze die interne 2,56V-Referenz mit externem Pufferkondensator, die 
scheint bis jetzt sehr stabil zu sein.
Die maximale Differenzspannung beträgt 60mV und liegt zwischen 0,1V und 
2,4V.
Ich würde gerne 1mV Differenzspannung minimal messen können.

Ich werde das einfach mal auf den Steckbrett testen. Danke erstmal für 
alle Ideen und Hilfestellungen!
#4077861
Lesenswert?

Die 10 Bit Wandler im AVR sind eigentlich schon so, dass man bei gutem 
Layout und Aufbau auch stabile Werte bekommt, auch ohne den µC für die 
Messung in den Stromsparmode zu versetzen. Je nach Spannung halt ein 
Schwanken zwischen 2 Werten, oder auch nicht. Der Einfluss der Ref. 
Spannung wird durch die Verstärkung davor auch nicht größer.

Das Problem ist eher das Rauschen der Verstärkungsstufe. Das kann man 
aber durch mitteln genügend vieler Werte durchaus zuverlässig 
unterdrücken. Wenn man also für einzelne Werte Schwankungen um 5 LSB 
hat, sollte man für den Mittelwert von z.B. 25 Werten das Rauschen schon 
bis auf etwa 1 LSB runter bekommen. Für langsame Messungen ist das 
Rauschen also nicht so sehr das Problem - in Grenzen hilft es sogar, 
wenn man Oversampling nutzen will.

Der 2. Punkt ist ggf. die Unterdrückung von 50 Hz und 100 Hz Störungen - 
hier ist das Mitteln von vielen Werten über ein Zeitintervall von 20 ms 
sehr effektiv, weil damit diese Frequenzen fast perfekt unterdrückt 
werden. Sofern man die Zeit hat, sollte man also die passende Zahl von 
Werten mitteln um auf 20 ms oder ein Vielfaches davon zu kommen. Also 
etwa bei 125 kHz ADC-Takt und damit 9,6 kHz Abtastrate im free running 
mode 192 oder besser 577 (gibt recht gut 60 ms) Werte mitteln.
Damit kann man sogar etwas mehr als 10 Bit Auflösung erwarten, und man 
ist vor allem durch die Nichtlinearität und den Offset begrenzt.
Gast #4078407
Lesenswert?

Ich hatte mal guten Mutes die Differenzmessung getestet (Verstärkung 1). 
Habe dabei feststellen müssen, dass man da einige Abstriche machen muss.
Nach Abgleich der Verstärkung und des Offsets blieb eine Nichtlinearität 
übrig, die ich nicht erwartet hatte. Und -wie schon angesprochen- muss 
man bei Rail2Rail auch Abstriche machen (besonders im oberen Bereich).

Das Ergebnis war, dass ich als Rohwert von 20 bis 1010 zugelassen habe. 
Die Nichtlinearität war in dem Bereich ca. 3 LSB.
Geht man über 1010 hinaus, wird die Nichtlinearität schnell recht groß. 
Bei 1022 habe ich -10 LSB gemessen.

Ich habe aber keine Erfahrung, wie stabil das ist - Langzeit und 
Temperatur. Ich habe mir angewöhnt, alle ADC-Messungen über einen 
digitalen Tiefpass zu glätten. Damit ist das Rauschen weg und man 
gewinnt noch etwas Genauigkeit, da das letzte klappernde Bit noch 
gewichtet wird.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren