Forum: Analoge Elektronik und Schaltungstechnik 0..10V mit ADC vom ATmega168 multiplexen für höhere Auflösung


von Chris B. (misterink)


Lesenswert?

Hallo zusammen,

Problemstellung:
analoges Messsignal 0...10V mit mindestens 16 Bit auflösen. Zur 
Verfügung steht 10Bit ADW der jedoch mehrfach gemultiplext werden kann.

Da das Signal relativ zeitunkritisch ist (eine Messung jede ms genügt), 
würde ich gerne den ADW des ATmega168 nutzen (die Messung ist Teil eines 
großen Projektes, deswegen muss dieser Controller verwendet werden).
Die 10 Bit Auflösung des ADWs onboard genügen jedoch nicht den 
Anforderungen.

Gibt es eine elektronische Schaltung, wie ich das Signal aufteilen kann, 
damit ich es multiplexen kann. Mit einem einfachen Spannungsteiler 
funktioniert das ja nicht, da der ADW nur einen PIN-Eingang hat, oder?

Danke,
Chris

von Treiber (Gast)


Lesenswert?

Mit einem Kanal grob messen, mit dem anderen fein?

War hier mal vor einiger Zeit als April-Scherz vorgeschlagen... geht 
nicht.

Ein paar Bits mehr kannst du durch Mitteln des Rauschens über mehrere 
Messwerte rausholen, aber 16 nicht.

Du brauchst einen echten 16Bit Adc. Dessen Appnotes, vor allem zur 
Versorgungsspannung und Platinenlayout, exakt befolgen.

Sonst sind von den 16 Bit 4 auch nur Zufallszahlen.

von Programmierer (Gast)


Lesenswert?

STM32F373 hat eingebaute Sigma-Delta-ADC mit 16Bit und 56kSamples/Sec.

von Chris B. (misterink)


Lesenswert?

Danke,

mehr wollte ich nicht.
An die "Grob/Fein" Messung hatte ich schon gedacht, hatte mir aber 
irgendwie eine OPV-Schaltung vorgestellt, bin allerdings kein 
Elektroniker.

Dann eben doch ein externer ADW...

Danke für die schnellen Antworten.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Chris Bauer schrieb:
> Problemstellung:
> analoges Messsignal 0...10V mit mindestens 16 Bit auflösen. Zur
> Verfügung steht 10Bit ADW der jedoch mehrfach gemultiplext werden kann.
Vergiss es. Du kannst nicht mit zwei billigen 8-Bit-Wandlern einen 
16-Bit-Wandler aufbauen.

Bei der DAC-Richtung ist die Problematik die selbe, aber es wird 
einfacher klar: bei einem 8-Bit-Wandler kann das letzte Bit z.B. um 1/2 
LSB abweichen. Das ist als 1/512 vom Endwert. Wenn du dahinter dann noch 
einen "Sub-Bit-Wandler" mit weitern 8 Bit hängst, dann wird das Ergebnis 
trotzdem nie besser sein können als der erste DAC, der ja schon viel zu 
große Abweichungen im LSB hat. Somit ist die Stetigkeit des Signals 
nicht gewährleistet. Ein Zähler, der von 0...65535 zählt, wird evtl. so 
eine "Rampe" erzeugen:
1
                        *                                               
2
                       *                                                
3
                      *                                                 
4
                     *                                                 
5
                    *                                                 
6
                   *                                                 
7
            *     *                                                   
8
           *     *                                                    
9
          *     *                                                     
10
         *     *                                                      
11
        *     *                                                       
12
       *     *                                                        
13
      *                                                               
14
     *                                                                 
15
    *                                                                   
16
   *         
17
0...    255                                                 
18
            256 ....
Von 0..255 gibt der "MSB-DAC" 0 aus, der "LSB-DAC" seine stetige Rampe. 
Beim Übergang von 255 nach 256 schaltet der "LSB-DAC" auf 0 um, der 
MSB-DAC gibt eine 1 aus. Der hier eingesetzte MSB-DAC ist sehr gut und 
hat nur eine kleine(!!) Abweichung. Die muss aber um den Faktor 256 
hochskaliert werden, damit ein Bit den 256-fachen Wert hat, und deshalb 
wirkt sich diese Nichtlinearität des DAC signifikant aus.

Und mit ein wenig Nachdenken kommst du drauf, dass genau das selbe 
Problem auch in deiner Konstellation auftreten wird. Nur eben in der 
anderen Richtung...

von avion23 (Gast)


Lesenswert?

Stichwort oversampling.

Das erhöht nur die Auflösung, nicht die Genauigkeit.

von Chris B. (misterink)


Lesenswert?

ja, danke.

Meine Idee war auch mehr eine elektronische (externe Schaltung), sprich, 
ich teile die Messpannung wirklich in 2 einzelne Spannungen auf um sie 
den (einen) ADC (gemultiplext) separat zuzuführen. Dann würde ich 2 
einzelne Spannungen mit 10Bit auflösen und würde so wirklich zu meiner 
erhöhten Genauigkeit kommen.

von Peter D. (peda)


Lesenswert?

Einen idealen ADC vorausgesetzt, kann man auf das Eingangssignal ein 
Dreiecksignal addieren und dann durch synchrone Mehrfachabtastung 
zusätzliche Subbits auslesen.

Addiert man ein Rauschen oder 50Hz Netzbrummen, erhält man zwar auch 
Subbits, nur sind die dann irgendwas, aber linear sind sie nicht. Man 
kann sie also getrost in der Pfeife rauchen oder sich in die eigene 
Tasche lügen.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Chris Bauer schrieb:
> Meine Idee war auch mehr eine elektronische (externe Schaltung), sprich,
> ich teile die Messpannung wirklich in 2 einzelne Spannungen auf um sie
> den (einen) ADC (gemultiplext) separat zuzuführen. Dann würde ich 2
> einzelne Spannungen mit 10Bit auflösen und würde so wirklich zu meiner
> erhöhten Genauigkeit kommen.
Deine Ideee dabei: so 1 Bit zusätzlich gewinnen? Und für die restlichen 
5 Bit das Ganze einfach noch ein paar mal hintereinander schalten?

Du hast nicht verstanden, was ich da geschrieben habe, oder?
Es ist prinzipiell egal, ob du deine 16 Bits in 8+8 oder 10+6 oder 
15+1 aufteilst. Du wirst das Problem mit der Stetigkeit immer haben...

von Amateur (Gast)


Lesenswert?

Mit einer, auf den jeweiligen Bereich angepassten Spannungslupe könnte 
es gehen. Allerdings sind die Anforderungen an die vorgeschaltete 
Elektronik entsprechend groß.
Unter dem Strich also dürfte ein passender Wandler besser und billiger 
werden.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Amateur schrieb:
> Mit einer, auf den jeweiligen Bereich angepassten Spannungslupe könnte
> es gehen.
Soweit die Theorie...

> Allerdings sind die Anforderungen an die vorgeschaltete
> Elektronik entsprechend groß.
Die Genauigkeit und Konstanz dieser Lupe muss besser sein als die 
Nichtlinearität des LSB des nachgeschalteten Wandlers. Fazit: in der 
Praxis nicht handhabbar. Oder andersrum: es lohnt den Aufwand nicht, 
weil es ja schon fertige und billige 16-Bit-Wandler gibt...

: Bearbeitet durch Moderator
von Harald W. (wilhelms)


Lesenswert?

Chris Bauer schrieb:

> Meine Idee war auch mehr eine elektronische (externe Schaltung),

Ja, eine solche "externe Schaltung" wäre ein >=16Bit-Wandler und
auch bei dem kannst Du, je nach Deinen Kenntnissen in Präzisions-
Elektronik, die letzten Bitstellen "wegschmeissen", weil eben
Genauigkeit immer schlechter als Auflösung ist.
Gruss
Harald

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.