Hallo zusammen,
ich wollte fragen, wie ich 0V aus dem DAC MCP4922 bekommen kann. Im
Datenblatt steht ja minimal 0,01V.
Ich möchte die DAC Spannung in einen Spannungsfolger-OP geben, welcher
einen FET steuert. Das Ganze soll eine elektronische Last geben.
(ähnlich: http://jasper.sikken.nl/electronicload/index.html)
Das Problem mit minimal 0,01V ist, dass das in meinem Fall mindestens
ca. 35mA Laststrom bedeutet. Das ist mir als minimaler Wert jedoch zu
hoch.
Jetzt suche ich einen Weg, den „Offset“ des DAC zu entfernen.
Vielen Dank im Voraus für eure Hilfe!
Gruß markus
markus schrieb:> Im> Datenblatt steht ja minimal 0,01V.
Davon würde ich mich nicht irritieren lassen, da diese Einschränkung für
<= 1 LSB Genauigkeit gilt.
Als Spannungsfolger einen Rail-to-rail Opamp mit Low output voltage
kleiner als 10mV? Gibt es so etwas überhaupt? Da musst du den Offset
doch sowieso nach dem Spannungsfolger entfernen.
markus schrieb:> ich wollte fragen, wie ich 0V aus dem DAC MCP4922 bekommen kann.
Wenn du wirklich mit 0V arbeiten willst, solltest du die Hardware auf
bipolar umstellen.
Georg
Falls du einen OPV mit dualer Versorgung hast (z.B. +-15V) gibts
massenweise Schaltungen zur Offsetkompensation. Eine solche kannst du so
anpassen, dass sie dir bei 10mV am Eingang 0mV am Ausgang bringt.
Bei einem single-Supply-OPV hilft dir das nicht wirklich weiter. Kein
OPV kann 0V am Ausgang liefern und gleichzeitig Strom treiben, rail2rail
hin, rail2rail her.
Siehe auch:
http://www.analog.com/media/en/training-seminars/tutorials/MT-035.pdf
Zitat:
"On the other hand, an output stage constructed of CMOS FETs (Figure 7B)
can provide nearly true rail-to-rail performance, but only under no-load
conditions."
"only under no load conditions" = praktisch nie
Ich würde der Stromquelle einen Offset verpasssen, so dass sie erst ab
z.B. 100mV anfängt, Strom zu liefern.
markus schrieb:> Das Problem mit minimal 0,01V ist, dass das in meinem Fall mindestens> ca. 35mA Laststrom bedeutet. Das ist mir als minimaler Wert jedoch zu> hoch.
Was ist dein maximaler Wert? 5A, 10A?
Das ist dann im mA Bereich eh nicht mehr genau wegen Offsets der Ops,
incl temperaturabhängigkeit, der kleinen Spannungen am
Temperatusmessshunt incl . den Thermospannungen im Aufbau etc. pp.
Insofern hast du da ganz andere Probleme.
Zur Lösung evt. darüber nachdenken, ob man den Bereich umschaltbar
macht, denn dass deine KSQ über 3 oder mehr Dekaden genau ist ist eh
Wunschdenken.
WehOhWeh schrieb:> "only under no load conditions" = praktisch nie
Das stimmt doch garnicht ;-)
Mit einem 1k Widerstand am Ausgang gegen GND kann ein R2R-OPV durchaus
0,000x V liefern. Nur nicht gleichermaßen auch volle VCC-Spannung.
markus schrieb:> Das Problem mit minimal 0,01V ist, dass das in meinem Fall mindestens> ca. 35mA Laststrom bedeutet. Das ist mir als minimaler Wert jedoch zu> hoch.
Also braucht du eine leicht negative Spannung an GND des DAC bezüglich
GND des shunts.
Leute vielen Dank für die Antworten! Ich kam gestern gar nicht dazu
einem zu antworten, da kommt schon die nächste Antwort!
@ m.n.:
Heißt das, ich kann bereits ab 0V die Ausgangsspannung um 1 LSB
schrittweise erhöhen?
Dann verstehe die Aussage im Datenblatt nicht ganz...
Kannst du mich bitte aufklären? :D
Vielen Dank im Voraus!
@ Noch einer:
Der LTC6246, welchen ich verwenden möchte hat einen Input Offset von
typ. 50µV. Diesen wollte ich mit einer Split Supply betreiben. Laut
Simulation reicht mir das so aus. Das funktioniert aber eben nur, wenn
ich auch 0V aus dem DAC bekommen kann.
Ich werde jedoch sicherheitshalber eine Offsetkompensation für den OP
eindesignen.
@ Georg:
Meinst du bipolare Versorgung nur für den OP oder auch andere
Schaltungsteile?
@ WehOhWeh:
Genau, deshalb die Split Supply Variante!
@ Falk Brunner:
Ich könnte den Offset auch mit einem zweiten DAC Ausgang einstellen oder
spricht etwas dagegen? Ich müsste vorher jedoch vorher noch genauer die
Einwirkung der externen Spannung auf den Offset verstehen.
@ Der Andere:
Der Maximalstrom sollte ca. 8-10A betragen. Die Referenz für den ADC und
DAC ist ADR380 (0,24%).
Denkst du das klappt so nicht mit einer Genauigkeit von ±1%?
Ich werde mir das anschauen und wenn es nicht ausreicht, werde ich eine
Umschaltung von 0-5A und 0-10A einplanen müssen.
@ Michael Bertrandt:
Theoretisch wäre es ja kein Problem diese zu erzeugen. Wenn es damit
möglich wäre, dass der DAC tatsächlich auf 0V runter kommt, wäre das
wahrscheinlich die einfachste Variante!
Geht das denn so?
Viele Grüße!
m.n. schrieb:> markus schrieb:>> Im>> Datenblatt steht ja minimal 0,01V.>> Davon würde ich mich nicht irritieren lassen, da diese Einschränkung für> <= 1 LSB Genauigkeit gilt.
Das ist doch deutlich, obwohl Du das so interpretierst, als ob am
DAC-Ausgang ein Offset von 10 mV stehen bleiben würde.
Der Ausgangsoffset ist laut Datenblatt "+/- 0,02% of FS Code = 0x000".
Noch einmal anders betrachtet: der 12-Bit DAC ist spezifiziert für Vref
= 2,048 V, wobei ein LSB 0,5 mV entspricht. Mit dem angegebenen
Offsetfehler mögen beim Code 0x000 1 mV am Ausgang anliegen, aber nicht
mehr.
Ich hatte mal den MCP4822 verwendet, der im Gegensatz zum MCP4922 über
eine interne Vref verfügt: keinerlei Probleme mit Nullpunkt oder FS!
m.n. schrieb:> WehOhWeh schrieb:> "only under no load conditions" = praktisch nie>> Das stimmt doch garnicht ;-)> Mit einem 1k Widerstand am Ausgang gegen GND kann ein R2R-OPV durchaus> 0,000x V liefern. Nur nicht gleichermaßen auch volle VCC-Spannung.
0.01V an 1k sind 10uA, so viel Leckstrom muss der Ausgangstransistor
nach VCC nicht haben, aber 1uA ist nicht unrealistisch. Mit 1k kommt man
also nicht unter 0.001V. Vonwegen 0.000x, m.n. hat mal wieder nicht
nachgedacht und nicht nachgerechnet aber behauptet munter
seine Schwurbeleien.
Bei einem fliegenden Aufbau mit Arduino + MCP4822 habe ich Spannungen im
Bereich 0 - 20 mV in 5er Schritten ausgeben lassen. Vref = 2,048 V
2-fache Verstärkung für Ausgangsbereich 0 - 4,095 V.
Zum Bild: die gestrichelte Linie ist der eff. Nullpunkt, der durch
Masseschleifen etwas verschoben ist. Der Wert für 0 liegt etwas über dem
Nullpunkt (ein Multimeter sagt 1,3 mV); ansonsten liegen die weiteren
Stufen im 5 mV Raster.
Egal, wie man es anstellt, auch durch eine Offseteinstellung bekommt man
den 'Knick' in der Kennlinie nicht weg. Wenn die Einstellzeit länger
sein darf, der Endwert (abhängig von Vref) nicht so kritisch ist und die
Werte um den Nullpunkt herum sehr genau sein sollen, wäre ein
gefiltertes PWM-Signal eine gute Lösung.
Alternativ könnte man auch 0xfff als Nullpunkt festlegen und die
Ausgangsspannung invertiert erzeugen. Bei Vcc = 5 V und U0 = 4,095 liegt
der Ausgangspegel weit genug von der Versorgungsspannung weg.
markus schrieb:> @ Der Andere:> Der Maximalstrom sollte ca. 8-10A betragen. Die Referenz für den ADC und> DAC ist ADR380 (0,24%).> Denkst du das klappt so nicht mit einer Genauigkeit von ±1%?> Ich werde mir das anschauen und wenn es nicht ausreicht, werde ich eine> Umschaltung von 0-5A und 0-10A einplanen müssen.
Und du hast Bedenken wegen 35mA?
ist deine analoge Schaltung denn auch so genau? 35mA bei 10A sind 0,4%.
Du hast also überall 0,1% Widerstände und der Shunt ist auch 0,1% mit
einem niedrigen Tk?
Wenn du eine Umschaltung einplanst, dann mach eine mit 2 Bereichen 1-10A
und 0-1A. Dann hast du auch das Problem nicht mehr dass der kleine D/A
Offset gleich so viel Strom bedeutet.
markus schrieb:> @ Georg:> Meinst du bipolare Versorgung nur für den OP oder auch andere> Schaltungsteile?
Eine Spannung und rail-to-rail ist immer nur eine Notlösung, die eben
nicht 100%ig funktioniert, sondern nur annähernd. Wenn +-5V oder mehr
zur Verfügung stehen, besteht kein Grund diese Versorgung nicht generell
zu benutzen. Auch für einen DAC ist das natürlich besser, wenn er 0V
ausgeben soll.
Bei einem ADC ist das anders, denn man kann Eingänge ausserhalb der
Versorgung betreiben, Ausgänge aber nicht, wenn sie Ströme > Null
liefern sollen (und was kann man schon mit 0 Strom anfangen?).
Georg