Hallo,
ich habe einen 12 Bit ADC (MAX11614) der eine Referenzspannung von
4.096V hat. Dieser soll über einen Shunt einen Strom von 0 - 20 mA
messen.
Also habe ich nun einen OPV mit geringen Offset heraus geesucht, der mir
die geringe Shunt Spannung erhöht. Der Shunt wird vorraussichtlich bei
50 Ohm liegen, damit die Messung nicht so stark beeinflusst wird. Dh am
OPV stehen ca 0,244 mV - 1V an. Nicht gerade viel aber zur not könnte
man den Shunt erhöhen. Nun möchte ich keine Spindeltrimmer verwenden
sondern lieber in Software abgleichen.
1. Wiso hat der ADC so eine Referenzspannung? Wiso genau so ein krummer
Wert?
2. Wie kann ich in Software abgleichen? Zwei Punkte und
geradengleichung?
3. Wenn meine Eingangsspannung nicht den vollen Spannungsbereich von 0 -
Vref ausnutzt gehen mir doch immer Bits verloren oder nicht?
AndyII schrieb:> Also habe ich nun einen OPV mit geringen Offset heraus geesucht, der mir> die geringe Shunt Spannung erhöht. Der Shunt wird vorraussichtlich bei> 50 Ohm liegen, damit die Messung nicht so stark beeinflusst wird. Dh am> OPV stehen ca 0,244 mV - 1V an. Nicht gerade viel aber zur not könnte> man den Shunt erhöhen. Nun möchte ich keine Spindeltrimmer verwenden> sondern lieber in Software abgleichen.
Das ist ein ziemlich großer Shunt.
> 1. Wiso hat der ADC so eine Referenzspannung? Wiso genau so ein krummer> Wert?
Weil 12 bit 4096 mögliche Werte sind, und damit 1 LSB = 1 mV.
> 2. Wie kann ich in Software abgleichen? Zwei Punkte und> geradengleichung?
Ein Punkt reicht eigentlich, wenn der Output bei null null ist, sonst 2,
ja.
> 3. Wenn meine Eingangsspannung nicht den vollen Spannungsbereich von 0 -> Vref ausnutzt gehen mir doch immer Bits verloren oder nicht?
Ja.
AndyII schrieb:> 1. Wiso hat der ADC so eine Referenzspannung? Wiso genau so ein krummer> Wert?
Bei der Zahl 4096 klingelt nichts?
AndyII schrieb:> 2. Wie kann ich in Software abgleichen? Zwei Punkte und> geradengleichung?
y = mx + b ist vermutlich die häufigste Kompensationsmethode und in der
Regel völlig ausreichend. Aber wenn die Kennlinie auch noch verbogen
ist, muss vielleicht was quadratisches oder ne LUT her. Wer weiss.
AndyII schrieb:> 3. Wenn meine Eingangsspannung nicht den vollen Spannungsbereich von 0 -> Vref ausnutzt gehen mir doch immer Bits verloren oder nicht?
Du hast immer noch alle Bits, aber jedes Bit steht für eine größere Zahl
mV. Dir geht also Auflösung und damit Genauigkeit verloren.
Du kannst jetzt entweder den Shunt vervierfachen oder nen OPV als
Verstärker davorschalten. Bei letzterem musst du den Offset am OPV
kompensieren und kannst dann nen ADC mit höherem Offset verwenden.
1.) weil die Referenzspannung durch die 12bit besser geteilt werden
kann.
Vref
---- * ADC-Wert
4096
Mach die Referenzspannung kleiner dann brauchst auch kein OPV.
Vielen Dank für eure Antwort.
Oh ja tatsächlich da hätte wirklich was klingeln können. Peinlich :D
Hab mich eben nur gewundert, weil ich ja eben iwie diese 4,09V erreichen
muss, damit ich die vollen 12 Bits nutzen kann.
bzw. werd ich warscheinlich irgendwo bei 4V landen was immer noch 91mV
zu wenig wäre für die volle Auflösung. Gibt es da vielleicht eine
abhilfe mit einer Externen Referenz? Wollte sowiso eine einsetzten.
AndyII schrieb:> werd ich warscheinlich irgendwo bei 4V landen was immer noch 91mV> zu wenig wäre für die volle Auflösung. Gibt es da vielleicht eine> abhilfe mit einer Externen Referenz?
Kannst du machen. Aber der Auflösungsgewinn ist bescheiden: grade mal
0,03 Bit, denn
2^0,03 = 4,091/4
bzw. anders formuliert:
1mV * 2^11,968 = 4V
Wenn du also den 4,096V Mesbereich nur bis 4,00V ausnutzt, nutzt du
rechnerisch 11,968Bit von 12 möglichen.
Wenn es keine anderen Gründe für eine externe Referenz gäbe: der
Auflösungsgewinn allein würde sicher nicht den Extraaufwand für eine
externe Referenz rechtfertigen.
Die Referenz kleiner zu wählen verringert nicht die Auflösung, nur den
Messbereich. Jeder Code repräsentiert weniger Spannungsänderung, die
Auflösung wird damit sogar feiner und die Dynamik bleibt -- wenn man
rein die Digitalisierung betrachtet -- gleich.
Sven B. schrieb:> Die Referenz kleiner zu wählen verringert nicht die Auflösung, nur den> Messbereich.
Da stimme mit dir überein.
> Jeder Code repräsentiert weniger Spannungsänderung, die> Auflösung wird damit sogar feiner und die Dynamik bleibt -- wenn man> rein die Digitalisierung betrachtet -- gleich.
Weniger Spannungsänderung pro Bit: Ja, sehe ich auch so.
Die Auflösung bleibt aber immer 12 Bit.
klar: die Auflösung des MAX11614 bleibt natürlich immer 12 Bit. Aber
wenn man den Messbereich des ADC nicht ausnutzt, dann verschenkt man
einen Teil dieser Auflösung.
Ein überzogenes Beispiel: würde der TO bei einem Messbereich von 4V nur
Signale zwischen 0V und 1V messen, dann hat natürlich jeder Messwert
immer noch 12 Bit, aber die obersten beiden Bits liegen bei jedem
einzelnen Messwert auf 0 (werden also nicht ausgenutzt). Ein anderer ADC
mit 2 Bit weniger Auflösung und passendem Messbereich könnte genau die
selbe Information liefern wie dieser 12Bit ADC mit nicht passendem
Messbereich.
in dem Sinn verschenkt der TO also 0,03 Bit, wenn er von seinem 4,096V
Messbereich nur 4,00V ausnutzt.
Achim S. schrieb:> in dem Sinn verschenkt der TO also 0,03 Bit, wenn er von seinem 4,096V> Messbereich nur 4,00V ausnutzt.
Richtig, aber wenn er eine 4V Referenz nimmt ist das nicht so. Das
kann sogar besser sein für den gegebenen Messbereich.
Achim S. schrieb:> bzw. anders formuliert:>> 1mV * 2^11,968 = 4V
super vielen Dank für die rechnung!
ich hab mir zwar die Stufen ausgerechnet aber nicht im verhältniss zu
den 12Bit.
Ne die Referenz hätte ich höchstens auf 5V erhöht aber da sich der
Aufwand scheinbar nicht lohnt werd ich das wohl lassen.
Sollte ich den OPV mit einer Referenz speisen? Geht denn die
Betriebsspannung des OPVs in die genauigkeit ein oder nur das rauschen
des OPVs?
Wie sieht es mit einem Schaltregler für die Schaltung (inklusive des
ADCs) aus? geht das gut?
Könnte ich den OPV mit einer negativen Spannung aus einer Ladungspumpe
speisen oder geht der Rippel der negativen Spannung zu sehr in die
Ausgangsspannung des OPVs ein?
AndyII schrieb:> Ne die Referenz hätte ich höchstens auf 5V erhöht aber da sich der> Aufwand scheinbar nicht lohnt werd ich das wohl lassen.
Oh ihr ward schon schnelle ;)
und natürlich den OPV dann von 0 - 5V am ausgang betreiben war gemeint
Sven B. schrieb:> Richtig, aber wenn er eine 4V Referenz nimmt ist das nicht so. Das> kann sogar besser sein für den gegebenen Messbereich.
Ja klar wäre eine 4 V Referenz in dieser Hinsicht (ein ganz klein
bisschen) besser als die 4,096V Referenz. Deswegen schrieb ich ja:
Achim S. schrieb:> Kannst du machen. Aber der Auflösungsgewinn ist bescheiden: grade mal> 0,03 Bit
Wenn man dem Shunt eine (kleine) + Toleranz zubilligt, sollte der
Messbereich schon etwas höher als genau 4,000V gehen.
Außerdem gibt es Stromschleifen, die mit 20,5 bis 21mA einen Fehler
signalisieren.
Die Auflösung ist meist nicht das Problem; sofern das Signal am Eingang
des ADC's genügend rauscht (oder Du selber Rauschen hinzufügst), kannst
Du per Oversampling/Filterung in der Software praktisch beliebig viele
Bits an Auflösung dazugewinnen.
Der Nachteil ist nur, dass die Messung länger dauert, da für das
Oversampling viele Einzelmessungen benötigt werden.
Ändert sich der Stromverlauf Deines Prüflings also nicht zu schnell,
könntest Du das anwenden und aus dem 12-Bit ADC und ein wenig
Signalverarbeitung quasi locker einen 16-Bit ADC machen.
wenn das Signal 0-20mA ist, dann ist es doch wohl ein 4-20mA-Sensor. Und
bei dem steht doch dran, bis wieviel Volt der arbeitet. Wenn er bis 5V
Abfall arbeitet, dann nimm halt 200R und keinen OP.
Wenn Du ihn Kalibrieren musst (die Referenz, den R, den Sensor oder wen
auch immer, OP fällt ja weg) dann nimm halt einen etwas kleineren Wert,
also 10% kleiner wenn Du 10% unkalibrierte Fehler erwartest.
Und wenn der Sensor nicht bis 5V Abfall arbeitet, dann beschreibe doch
erstmal wo Du überhaupt hinwillst und welche Fehler Du warum
kompensieren möchtest. Die Lösungen sind dann von Kelvinanbindung bis
rauschfreie OPs recht unterschiedlich.
Achim S. schrieb:> Sven B. schrieb:>> Richtig, aber wenn er eine 4V Referenz nimmt ist das nicht so. Das>> kann sogar besser sein für den gegebenen Messbereich.>> Ja klar wäre eine 4 V Referenz in dieser Hinsicht (ein ganz klein> bisschen) besser als die 4,096V Referenz. Deswegen schrieb ich ja:>> Achim S. schrieb:>> Kannst du machen. Aber der Auflösungsgewinn ist bescheiden: grade mal>> 0,03 Bit
Ach so, sorry, vergiss es, hab dich falsch rum verstanden. Ich glaube
wir sind uns in allem einig. ;)
Ich wollte eine Referenz vorsehen die dann optional bestückt werden kann
Dann würde das mit der 4v Referenz Sinn machrn
Wie gehe ich da am besten vor? Früher habe ich einen rauscharmen opv und
dann die Referenz mit einem Poti über den opv eingestellt
Allerdings will ich ja keine Potis verwenden und ich denke für die
Auflösung könnte das bißchen ungenau werden oder?
Gibt's denn Meinungen zu meinen anderen fragen von oben?
AndyII schrieb:> Ich wollte eine Referenz vorsehen die dann optional bestückt werden kann> Dann würde das mit der 4v Referenz Sinn machrn
Das wäre imho nur sinnvoll, wenn es andere gute Gründe für die externe
Referenz gäbe. Nur wegen der Messbereichsanpassung wäre das völlig
unangemessener Aufwand.
Mögliche Gründe für eine externe Referenz könnten sein:
- dass der Messbereich grob daneben liegt (aber bei dir passt er mit 4V
bei 4,091V Referenz ohnehin schon sehr gut)
- dass die interne Referenz zu ungenau ist und du nicht kalibrieren
willst (aber du willst ja ohnehin per Software abgleichen)
- dass die interne Refernz zu stark driftet oder zu sehr rauscht und du
extern etwas besseres bauen willst (aber bist du sicher, dass dein
externer Aufbau wirklich besser würde als die interne Referenz des
MAX11614?)
Was deine übrigen Fragen zu Genauigkeit, Rauschen, Einfluss der
Versorgungsspannung, .... angeht: hier mal zwei Links
http://www.analog.com/media/en/technical-documentation/application-notes/AN-835.pdfhttp://www.ti.com/lit/an/slaa013/slaa013.pdf
Super! Danke für die beiden Links. Den zweiten habe ich sogar bereits
davor gelesen.
Mein Problem ist eben, dass ich 24V einspeißen will und daraus 5V
erzeugen will. Deshalb wirds schwer mit einem linearen Regler zu
arbeiten. Bei der negativen Supply für den OPV würden mir auch 1V - 5V
reichen. Dachte da eben sofort an eine Ladungspumpe denke aber dass
diese zu schlecht ist.
Sven B. schrieb:> Nimm einen DC/DC-Wandler, wenn du mehr als ein paar 10 mA brauchst ...> sonst tut es auch ein Linearregler.
so isset.
Und wenn ohnehin eine bipolare Versorgung gebraucht wird: nimm einen
DCDC mit zwei Ausgängen (z.B. + und - 5V).
Ob dessen Ausgangsspannungen "gut genug" sind lässt sich nicht allgemein
sagen. Es gibt große Unterschiede bei den DCDC. Und es hängt von der
Empfindlichkeit der versorgten Schaltung ab (wichtigster Parameter
dürfte die PSRR des OPV und des ADC bei der Schaltfrequenz des DCDC
sein). Wenn du Bedenken hast, dass es nicht gut genug wird, dann baue
passive LC-Filter hinter den DCDC-Ausgang.
Du kannst auch mit dem DC/DC von 24 auf 6 V und dann einen
Lowdrop-Linearregler dahinterbauen, das gibt mit sehr wenig Aufwand eine
sehr gute Spannung.
vielen Dank für eure Antwort ihr habt mir sehr geholfen.
Wie sieht denn eine berechnung des LC glieds aus? Gibts da eine Formel
in einer App-Note oder nehme ich da einfach eine Grenzfrequenz unterhalb
des Schaltreglers?