Forum: Analoge Elektronik und Schaltungstechnik Verschiedene Kanäle eines ADC lesen unterschiedliche Werte


von EGSler (Gast)


Lesenswert?

Ich habe alle 8 Kanäle eines ADC (AD7609, 18bit Auflösung) verbunden und 
speise eine Spannung von exakt 10,0mV ein.
Nun liefern mir die Kanäle aber unterschiedliche Werte (zusätzlich auch 
noch eine unterschiedlich große Schwankung - manche wackeln um +-1LSB, 
andere um +-2LSB).
Woher kommen diese unterschiedlichen Offsets?
Jetzt wollte ich den Fehler in Software auskorrigieren, aber leider ist 
der Fehler nicht konstant, ich habe z.B. noch eine Testreihe mit 900mV 
aufgenommen, da sieht das Bild dann wieder etwas anders aus. Ein fester 
Offset lässt sich also nicht einprogrammieren!
Was macht man denn in solchen Fällen?
Mir ist klar, dass die gemessende Spannung bereits sehr klein ist, aber 
da mit dem ADC Sensoren sehr genau ausgelesen und verglichen werden 
sollen steht die Anforderung, dass die Messung auf wenigstens 150µV 
genau sein sollte.
Lässt sich das eurer Meinung nach sicher korrigieren?

von EGSler (Gast)


Angehängte Dateien:

Lesenswert?

Achso, Grafik hab ich vergessen.

von wetteristschön (Gast)


Lesenswert?

EGSler schrieb:
> Achso, Grafik hab ich vergessen.

Empfindest du nicht, daß es da ein paar Sätze der Erläuterung braucht. 
Ich gebe zu, ich habe angefangen das Ding verstehen zu wollen, aber wozu 
die Mühe, wenn ein paar Worte von dir das erheblich verkürzen würden?

von EGSler (Gast)


Lesenswert?

Oh, welche Info fehlt?
Also, wie gesagt, 10mV lagen an, y-Achse zeigt die Spannung. Unten ist 
der Zeitstempel, gemessen wurde alle 100ms (aber das spielt ja hier kaum 
eine Rolle).
Die Grafik sollte nur veranschaulichen, in welchem Maße die einzelnen 
Kanäle voneinander abweichen.

von Max M. (jens2001)


Lesenswert?

Was ich im vorigen Tread
Beitrag "Range des AD7609 (AD-Wandler)"
schon geschrieben hab.

Lies das Datenblatt!
In dem Abschnitt "DC ACCURACY" ist längst nicht alles auf 0(NULL).

von Ingo L. (corrtexx)


Lesenswert?

Dir ist klar, dass bei solchen geforderten Genauigkeiten das Layout eine 
entscheidende Rolle spielt?! Ganz nebenbei scheinst du dir ein 
periodisches Signal einzufangen, wo auch immer das herkommt.

Wie sieht denn deine Filterbeschaltung bzw. überhaupt deine Schaltung 
aus?

von Stephan H. (stephan2807)


Lesenswert?

EGSler schrieb:
> Lässt sich das eurer Meinung nach sicher korrigieren?

Nein.
Schau ins Datenblatt. Die Infos unter DC Accuracy sollten deine Fragen 
beantworten.

Merkwürdig finde ich aber die Angabe +-10LSB total unadjusted error. Da 
liegen jede Menge Einzelfehler schon über den 10 LSB.

von EGSler (Gast)


Angehängte Dateien:

Lesenswert?

Max Mustermann schrieb:
> Lies das Datenblatt!
> In dem Abschnitt "DC ACCURACY" ist längst nicht alles auf 0(NULL).

Ja, soweit ist das klar, das habe ich durchaus gelesen.
Aber ich bin bisher davon ausgegangen, dass das ein fester Fehler sein 
wird, den man problemlos über einen Offset (entweder fix oder 
prozentual) rausrechnen kann.
Aber wenn sich der Fehler ändert, dann steh ich auf dem Schlauch, wie 
ich die Kanäle auf ein vergleichbares Niveau bekommen kann ;/

@Ingo Less
Ja, die Periodizität kann ich mir nicht wirklich erklären, da sie eine 
Periodendauer von ~4s hat. Ein 0,25Hz Signal kann mir schlecht durch 
andere Geräte einstreuen, oder?
Sicher spielt das Layout eine große Rolle, aber da alle Kanäle ziehmlich 
gleich angeschlossen sind, hatte ich dann auch einen identischen (durch 
den Aufbau bestimmten) Fehler erwartet. Filterschaltungen kommen keine 
zum Einsatz, da ich das Signal nicht unnötig belasten und gleichzeitig 
mit 10Hz messen wollte.

von Harald W. (wilhelms)


Lesenswert?

EGSler im Beitrag #4092140:

> "AD1_angeschlossen.jpg"

Ein Steckbrett und µV-Messungen erscheint mir keine besonders
glückliche Kombination zu sein.

von Peter II (Gast)


Lesenswert?

EGSler schrieb:
> Ja, die Periodizität kann ich mir nicht wirklich erklären, da sie eine
> Periodendauer von ~4s hat. Ein 0,25Hz Signal kann mir schlecht durch
> andere Geräte einstreuen, oder?


> gemessen wurde alle 100ms

damit kann die Frequenz aber auch viel höher sein und du sieht nur 
irgendwelche alias Effekte. Miss mal jede ms.

von Max M. (jens2001)


Lesenswert?

EGSler schrieb:
> davon ausgegangen, dass das ein fester Fehler sein
> wird, den man problemlos über einen Offset (entweder fix oder
> prozentual) rausrechnen kann

Ja glaubst du den dass deine 8 Messfühler keine 8 unterschiedlichen 
Nullpunktfehle/Steigungsfehler/Nichtlinearitäten/Temperaturdrift/Langzei 
tdrift....  haben?

18 Bit ist schon eine höhere Liega!
(18^2=262144!)

: Bearbeitet durch User
von Pandur S. (jetztnicht)


Lesenswert?

Die Messwerte sind voellig IO, da gibt's nichts zu verbessern. Mach 
weiter mit dem Projekt.

von Echtzeituhr (Gast)


Lesenswert?

EGSler schrieb:
> manche wackeln um +-1LSB,
> andere um +-2LSB).

Na und? Im DC Accuracy Abschnitt des Datenblatts gibt es je nach 
Messbereich Schwankungen von +-140 LSB.

von sdg (Gast)


Lesenswert?

wie hoch ist denn deine Spannunsgauflösung, das hängt ja von deiner 
Referenz des ADC ab.

Deine Graphic verstehe ich da auch nicht wirklich, die y-Achse ist mit 
Spannung [ mV ] , oder? dann sprichst du wieder von LSB, da hättest du 
allerdings direkt die realen counts angeben können.

Beim genauen Messen ist eben ausschließlich wichtig, dass man die 
Messungenauigkeiten und Drifts kennt, sonst hat man zwr ein Ergebnis, 
aber eine Aussage lässt sich damit nur schwer treffen.

von EGSler (Gast)


Lesenswert?

Uff, das ist ja auswertungstechnisch doch deutlich anspruchsvoller als 
ich erwartet hatte. Da muss ich mir dann nochmal was überlegen, bzw. 
mich intensiver einlesen. Ich hatte gehofft, das wäre eine einfache 
Softwarekorrektur für alle Kanäle und schon wäre das Problem gelöst.
Naja, wieder was gelernt.
Ich begeb mich mal auf die Suche nach verständlicher Literatur...

von EGSler (Gast)


Lesenswert?

sdg schrieb:
> Deine Graphic verstehe ich da auch nicht wirklich, die y-Achse ist mit
> Spannung [ mV ] , oder? dann sprichst du wieder von LSB, da hättest du
> allerdings direkt die realen counts angeben können.

Die Auflösung beträgt 75µV, daher kann man in der Grafik, trotz Skala in 
mV, ganz gut die einzelnen vertikalen Schritte erkennen.

von Walter (Gast)


Lesenswert?

Peter II schrieb:
> Miss mal jede ms.

mach das doch mal

von Stephan H. (stephan2807)


Lesenswert?

EGSler schrieb:
> Uff, das ist ja auswertungstechnisch doch deutlich anspruchsvoller als
> ich erwartet hatte.

Was liefern den deine Sensoren an GENAUIGKEIT?
Nur weil der Hersteller 18 Bit empfiehlt heißt es noch lange nicht, dass 
die Sensoren auch nur annähernd 18 Bit Genauigkeit liefern.

von Stefan F. (Gast)


Lesenswert?

> Nun liefern mir die Kanäle aber unterschiedliche Werte ...
> manche wackeln um +-1LSB, andere um +-2LSB

Das ist völlig normal. Bei einem 18bit Wandler hätte ich sogar mehr 
erwartet.

von sdg (Gast)


Lesenswert?

EGSler schrieb:
> Die Auflösung beträgt 75µV


2^18bit * 75µV = 19.608 V

Ich lese jetzt deine Datenblätter nicht, und deine Spezifikationen hast 
du ja zum Glück auch nicht angegeben :)

Ich kennen keinen ADC der 20 V Refernezspg hat oder kann, aber ich kenne 
ja auch nur meine kleine Elektronikwelt und lasse mich gerne belehren.

Schau dir mal lieber direkt die ADC counts an, ADC counts ist das einzig 
reale, sobald du ne Umrechnung in Volt vornimmst, hast du schon wieder 
einen ( wenn auch kleinen ) Umrechnungsfehler drin und soweiter.

Mach dir mal ein Bild von deinem Gesamtsystem, und den realen Größen, 
dein ADC rechnet digital nämlich mit counts und da gibt es keine 
Spannungen mehr, sei dir immer bewusst welche Größen und Fehler dadurch 
auftreten können.

18bit ADC heisst ja sowieso nicht, dass du real 18bit Auflösung hast, 
bedingt durch physikalisches Grundrauschen kommst du da schon nicht hin, 
thermische Sachen usw...

Wie willst du denn messen, max zu messende Spg. minimale Auflösung usw. 
dann könnte ja sein dass du am Ende garnicht sogenau messen musst und 
dir deine Abweichung eigentlich egal sein kann, oder eben auch nicht, 
aber das musst du wissen.

von Harald W. (wilhelms)


Lesenswert?

EGSler schrieb:

> Ich hatte gehofft, das wäre eine einfache
> Softwarekorrektur für alle Kanäle und schon wäre das Problem gelöst.

Das gilt nur, wenn Du den AD-Wandler innerhalb eines Simulations-
programms aufbaust. :-)

von Max M. (jens2001)


Lesenswert?

sdg schrieb:
> 2^18bit * 75µV = 19.608 V
>
> Ich lese jetzt deine Datenblätter nicht, und deine Spezifikationen hast
> du ja zum Glück auch nicht angegeben :)

Hatten wir in einem vorherigen Tread.
Beitrag "Range des AD7609 (AD-Wandler)"

"Im 10V-Modus darf die max. Spannung an den Eingängen (bezogen auf AGND)
+-10V betragen.
Die Differenzspannung an den Eingängen darf max. +-20V betragen.
Wenn du das Bezugspotential für deine Messschaltung auf -10V legst und
mit dem V- Eingang verbindest hast du am V+ Eingang einen Messbereich
von 0V - +19,9992V zur verfügung. Was einem Wertebereich von 0x00000 bis
0x1FFFF entspricht"

von EGSler (Gast)


Angehängte Dateien:

Lesenswert?

Ich hab mal eine Messung alle 3ms aufgenommen, schneller schafft meine 
Software leider nicht. Und links die Skala ist mir entglitten, das sind 
natürlich nach wie vor mV.
Die großen Schwingungen von den Messungen mit 10Hz sind nicht mehr zu 
sehen...

von Stefan F. (Gast)


Lesenswert?

> Die großen Schwingungen ... sind nicht mehr zu sehen...

Woran hat es gelegen?

von Pandur S. (jetztnicht)


Lesenswert?

Das schaut doch super aus. Was soll daran nicht gut sein?

von Stephan H. (stephan2807)


Lesenswert?

Jetzt Nicht schrieb:
> Das schaut doch super aus. Was soll daran nicht gut sein?

Find ich auch. Der Offset zwischen den Kanälen war über die Messungen 
auch sehr schön konstant.

Da lässt sich in der Software dann was machen. (Gain-Abweichung noch 
prüfen)
Musst aber halt immer wieder prüfen und ggf. nachjustieren. Man hofft 
halt, dass die Abweichungen relativ gleich bleiben. Garantiert ist aber 
nichts.

von Arc N. (arc)


Lesenswert?

EGSler schrieb:
> sdg schrieb:
>> Deine Graphic verstehe ich da auch nicht wirklich, die y-Achse ist mit
>> Spannung [ mV ] , oder? dann sprichst du wieder von LSB, da hättest du
>> allerdings direkt die realen counts angeben können.
>
> Die Auflösung beträgt 75µV, daher kann man in der Grafik, trotz Skala in
> mV, ganz gut die einzelnen vertikalen Schritte erkennen.

75 uV bei einem Bipolar Zero Code Error Matching von typ 13 LSB max 65 
und einem Positive Full-Scale Error Matching von typ 40 LSB und max 100 
LSB.

10 mV liegen nahe bei 0 V d.h. der erstgenannte Fehler kann schon zw. 13 
bis 65 LSB * 75 uV = 975 uV bis 4875 uV liegen... D.h. die Messungen 
passen gut zu den Angaben im Datenblatt...
Andere Fehler durch die geringe Eingangsimpedanz (1 MOhm) und die hohen 
Eingangsströme (2.5 uA typ) kommen da noch hinzu.
SNR liegt bei 100 dB typisch (fin = 160 Hz) d.h. ENOB = (SNR - 1.76) / 
6.02 etwa 16.32 Bits. Beim SINAD sind es ohne Oversampling etwa 14.66 
Bits. Passt also vom Rauschen auch...

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.