Hi,
ich habe hier eine MCU, welche über einen DAC mit einem OpAmp verbunden
ist, der -5V..+5V Ausgangsspannung liefert. Hier kommt ein
vergleichsweise preiswerter OpAmp zum Einsatz, welcher dementsprechend
einen Gleichspannungs/-Nulloffset hat (real sind das etwa 0,002 bis
0,005V).
Diesen Offset würde ich jetzt gerne in der Software der MCU ausgleichen.
Mein Problem dabei (und jetzt kommen wir zu dem Grund, warum ich die
Frage unter "Analogtechnik" stelle): wie ermittle ich wie groß der
Offset aktuell ist?
Wann immer ich einen ADC einsetze, um die Spannung zu messen, kommen
dessen Ungenauigkeit und die Bauteiltoleranzen für die Umwandlung der
Spannung von -5V..+5V auf 3V dazu, so dass ich vermutlich irgend was
messe, aber nicht meinen realen Offset.
Meine Idee deswegen: eine Schaltung, welche je nach Eingangsspannung
kippt und mir ein Digitalsignal liefert: ist die Ausgansspannung am
OpAmp >0V, so wird das eine Signal auf HIGH gesetzt, ist sie kleiner als
0V, wird der andere Pin auf HIGH gesetzt. Sollte die Spannugn wirklich
exakt bei 0V liegen, sind beide Pins auf LOW (muss aber nicht sein, da
ich auch das Kippen von einem Ausgang auf den anderen auswerten kann).
Meine Frage: geht sowas überhaupt, ohne dass ich mir da zusätzliche
Offsets einhandele, die den zu messenden Offset überlagern?
Wenn ja, wie würde sowas aussehen?
Danke!
Fram schrieb:> Meine Idee deswegen: eine Schaltung, welche je nach Eingangsspannung> kippt und mir ein Digitalsignal liefert: ist die Ausgansspannung am> OpAmp >0V, so wird das eine Signal auf HIGH gesetzt, ist sie kleiner als> 0V, wird der andere Pin auf HIGH gesetzt. Sollte die Spannugn wirklich> exakt bei 0V liegen, sind beide Pins auf LOW
Eine nette Vorstellung aber tatsächlich wird das nicht funktionieren.
Selbst mit den besten Messgeräten bleibt eine Messunsicherheit, von
"exakt 0V" zu reden, macht also keinen Sinn.
Fram schrieb:> Wann immer ich einen ADC einsetze, um die Spannung zu messen, kommen> dessen Ungenauigkeit und die Bauteiltoleranzen für die Umwandlung der> Spannung von -5V..+5V auf 3V dazu
Was du dir überlegt hast, ist ja im Prinzip ein weiterer ADC, nur eben
diskret aufgebaut. Wenn du es schaffst, den so aufzubauen, dass die
Messunsicherheit unter dem von deinem "echten" ADC liegt, wirst du das
Offset besser annähern können, eine exakte Messung existiert aber nicht.
Ist es da nicht einfacher, einfach einen besseren OPA zu nehmen?
Der zusätzliche Schaltungsaufwand macht den günstigeren evtl ja nicht
einmal insgesamt billiger.
Fram schrieb:> eine MCU, welche über einen DAC mit einem OpAmp verbunden> ist, der -5V..+5V Ausgangsspannung liefert. Hier kommt ein> vergleichsweise preiswerter OpAmp zum Einsatz, welcher dementsprechend> einen Gleichspannungs/-Nulloffset hat (real sind das etwa 0,002 bis> 0,005V).
Wie hoch ist denn der Offset des DAC? Der OPV allein bringt Dir wenig.
Aber es ist ja nicht nur der Offset den man an Deinem OPV (welcher das
auch immer ist) kompensieren kann. Ein gewöhnlicher OPV driftet auch.
Aber es gibt auch OPV mit Zero Drift. Und die haben dann auch gewöhnlich
einen geringen Offset.
Ich hatte vor ca. 2 Jahren bei TI eine Vergleichsliste entsprechender
OPV erstellt. Den OPA333 hatte ich vor 10 Jahren als bezahlbaren Top OPV
eingesetzt. Jetzt sind die noch etwas besser geworden. Ach übrigens, das
Rauschen kann auch eine Rolle spielen.
Wenn der Offset konstant wäre, dann mach doch zuerst eine Messung mit
kurzgeschlossenem Eingang und messe mit Deinem ADC. So erhältst Du einen
Momentwert des Offsets.
mfg Klaus
Klaus R. schrieb:> Wie hoch ist denn der Offset des DAC? Der OPV allein bringt Dir wenig.> Aber es ist ja nicht nur der Offset den man an Deinem OPV (welcher das> auch immer ist) kompensieren kann. Ein gewöhnlicher OPV driftet auch.
Hm, an den DAC habe ich jetzt noch gar nicht gedacht - aber das wäre ja
egal, sowohl der DAC-Offset als auch die Drift ließe sich mit meiner
oben beschriebenen Methode ja ausgleichen (zwischen drin immer mal
nachmessen/-justieren ist kein Problem).
Fram schrieb:> sowohl der DAC-Offset als auch die Drift ließe sich mit meiner> oben beschriebenen Methode ja ausgleichen
Jetzt solltest Du noch sagen um welche Genauigkeit es eigentlich geht.
Wieviel Bit haben DAC und ADC?
> welcher dementsprechend> einen Gleichspannungs/-Nulloffset hat (real sind das etwa 0,002 bis> 0,005V).
Das heißt, nach Offsetabgleich bleiben noch 2 mV bis 5 mV?
mfg Klaus
Klaus R. schrieb:> Jetzt solltest Du noch sagen um welche Genauigkeit es eigentlich geht.> Wieviel Bit haben DAC und ADC?
Der DAC (extern) hat 20 Bit, der ADC (in der MCU) nur 12, die passen
also gar nicht zusammen.
Klaus R. schrieb:> Das heißt, nach Offsetabgleich bleiben noch 2 mV bis 5 mV?> mfg Klaus
Aktuell habe ich keinen Offsetabgleich und deswegen eben diese 2..5mV.
Fram schrieb:> Der DAC (extern) hat 20 Bit, der ADC (in der MCU) nur 12, die passen> also gar nicht zusammen.
Mit 12 Bit kannst Du prinzipiell 1/4096 auflösen. Aber andersherum wird
man bei 20 Bit in die Gegend des Rauschpegels kommen und kann die 20 Bit
auch nicht voll nutzen ohne einigen Aufwand zu betreiben.
Eine Möglichkeit wäre den Offsetabgleich mit Hilfe eines Integrators zu
machen. Auf Seite 10 des Datenblattes wird so eine "Servo Loop"
beschrieben.
https://www.analog.com/media/en/technical-documentation/data-sheets/lt1115fa.pdf
Diese Schaltung, also nur der Servo, hat mit den 100 K und 1 µF eine
Zeitkonstante von 100 ms. Mit 1 M und 1 µF kommt man auf 1 s. Für
Wechselstrom ist dies gut geeignet. Sie regelt den Gleichanteil
herunter.
Wenn es um Gleichstrommessungen geht, also mit Gleichanteil, dann kann
man den Servo nur als Indikator für einen Gleichanteil verwenden. Im
einfachsten Fall regelt man über ein Abgleichpoti manuell, so daß der
Anstieg minimal wird. Geht er dann mal auf und mal ab, dann hast Du den
Rauschbereich erreicht.
mfg Klaus
Man sollte sich im Klaren sein :
- Wie klein darf ein Offsetfehler sein ?
Was bewirkt ein Messfehler in der Realitaet ?
Wenn ein Messfehler irgendwelche Panik bewirkt,
ist man noch nicht in der Realitaet angekommen.
- Was ist besser/guenstiger/zuverlaessiger..
einen besseren OpAmp, oder Zeugs aussen
rum zur Autokalibration.
- Wie oft muss man eine autokalibration laufen lassen.
- Vertraegt der Prozess eine disruptive Autokalibration
Fram schrieb:> Der DAC (extern) hat 20 Bit
Erzähl mal noch Witz. Einen OPV mit 5mV Offset nimmt man für max
8Bit-DACs.
So ein 20Bit DAC (AD5791) kostet ja schon ordentlich, da gehören auch
hochwertige Komponenten dazu. Also LTZ1000 Referenz, Z-Foil-Widerstände
und Zero-Drift OPVs.
Bei einer Auflösung von 20Bit hat man nicht nur Gain- und Offsetfehler.
Daher nimmt man zur Korrektur eine Spline-Interpolation.
Voraussetzung ist natürlich ein entsprechend genaues DMM, z.B. das
3458A.
Wenn der ADC einen PGA hat, kannst du die 12 Bit nutzen, um den Offset
gegen GND recht hochauflösend zu messen. Aber zeig doch bitte mal die
ganze Schaltung. Gefühlt gibt es hier mehr Optimierungspotential.
Fram schrieb:> Aktuell habe ich keinen Offsetabgleich und deswegen eben diese 2..5mV.
Ein OpAmp mit 1/200 dieses Offsets kostet als Einzelstück wenige Euro.
Den Abgleich und die zusätzlich erforderliche Elektronik, um den
periodisch zu machen, gibt es auch nicht umsonst. Um welche Stückzahlen
geht es denn, dass du jeden Cent sparen musst?