Forum: Mikrocontroller und Digitale Elektronik D/A Wandler Unlinearitäten


von Matthias (Gast)


Lesenswert?

Hallo zusammen,

ich habe mit einem ATmega88a eine Präzisionsspannungsquelle gebaut. Über 
eine Tastatur wird ein Spannungswert zwischen 0,000 V und 15,999 V 
eingegeben und vom ATmega über SPI an einen 16 Bit D/A Wandler DAC8871 
übergeben. Die übergebenen Wert habe ich mittels Logic-Anasyser 
überprüft und sie sind richtig. Die Referenzspannungsquelle habe ich so 
kalibriert das bei eingestellten 1V auch 1V rauskommen. Gemessen mit 
einen 6 1/2 Stellen Präzionsmultimeter. So kalibriert kommen die über 
die Tastatur eingestellten Spannungen zwischen 0 und 2 V auf ein paar 
zehntel Millivolt genau aus dem D/A Wandler.

Das Problem ist jetzt, das Spannungen die über den 2 V liegen nicht mehr 
genau sind, sogar springen.
Bei z.B. eingestelten 3,999 V kommen 3,971 V raus.
Bei 4,000 V kommen 3,992 V raus.
Bei 4,001 V kommen 3,973 V raus.
Bei 4,002 V kommen 3,975 V raus.
Die Abweichung folgt einer Kurve die so bei 8 Volt ihre maximale 
Abweichung erreicht und bis 15,999 V wieder geringer wird. Teilweise 
(oder recht häufig) sind aber Ausreißer drin die nicht in die Kurve 
passen, wie oben zu sehen.
Ich habe auch schon probiert auf einen höheren Spannungswert zu 
kalibrieren, dann sind aber die Spannungen im Millivoltbereich zu 
niedrig.

Der Fehler ist reproduzierbar, wenn ich eine Spannung einstelle und die 
gleiche Spannung ein Tag, eine Woche später einstelle kommet immer das 
gleiche Ergebnis.

Meine Frage ist jetzt ob jemand schon mal mit diesem D/A Wandler DAC8871 
gearbeitet hat und die gleichen Probleme hatte, oder diese Probleme 
allgemein bei D/A Wandlern auftreten.

Danke
Matthias

von Jürgen G. (Firma: Elektronikentwickler Aachen) (fjgensicke)


Lesenswert?

Im Datenblatt sind auch Sprünge zu erkennen, wenn gleich auch viel 
geringer als bei Dir.
Messe mal mit Deinem 6,5 stelligem DVM die Referenzspannung zusätzlich 
zur Ausgangsspannung.
Ich komme bei einer Ref=16V max. auf 1,5mV Linearitätsfehler.

von Matthias (Gast)


Lesenswert?

Danke für den Tipp. Dier Referenzspannung ändert sich wirklich um bis zu 
0,2 Volt. Werde mal einen Spannungsfolger dazwischen bauen.

von Falk B. (falk)


Lesenswert?

@  Matthias (Gast)

>Danke für den Tipp. Dier Referenzspannung ändert sich wirklich um bis zu
>0,2 Volt.

Aua.

von Florzo (Gast)


Lesenswert?

>Danke für den Tipp. Dier Referenzspannung ändert sich wirklich um bis zu
0,2 Volt. Werde mal einen Spannungsfolger dazwischen bauen.

Waaassssss? Alles was den Namen Referenz traegt hat auf 50ppm/K oder 
besser stabil zu sein. Gemaess Datenblatt.

von Christian F. (funke4ever)


Lesenswert?

Was wird denn als Referenzspannungsquelle genutzt? Fertige IC's sollten 
eigentlich nicht so einbrechen.

von Matthias (Gast)


Lesenswert?

Als Referenzspannungsquelle benutze ich ein TL1431AIZ. Laut Datenblatt 
typ. 13ppm/K. Widerstände haben 0,1% Toleranz und 15ppm/K. Zur 
Feinjustierung jeweils Spindelpoties in Reihe. Hab da als letztes dran 
gedacht das das Probleme macht und diese Spannung zusammenbricht bei 1,3 
mA Stromaufnahme vom DAC

von Falk B. (falk)


Lesenswert?

@  Matthias (Gast)

>Als Referenzspannungsquelle benutze ich ein TL1431AIZ. Laut Datenblatt
>typ. 13ppm/K. Widerstände haben 0,1% Toleranz und 15ppm/K.

> Zur
>Feinjustierung jeweils Spindelpoties in Reihe.

Wie groß sind die? Welchen TK haben die?

> Hab da als letztes dran
>gedacht das das Probleme macht und diese Spannung zusammenbricht bei 1,3
>mA Stromaufnahme vom DAC

Dann ist dein Speisewiderstand zu groß.

von Christian F. (funke4ever)


Lesenswert?

Ein Schaltplanausschnitt könnte evtl. helfen, vielleicht fällt ja 
jemanden was auf.

von Matthias (Gast)


Lesenswert?

Aufgebaut ist das Ganze nach Datenblatt Figure 2.
Speisewiderstand 1k
R1: 21K mit 500 Ohm Spindelpoti in Reihe
R2: 3,65K mit 100 Ohm Spindelpoti in Reihe
Toleranz der Widerstände 0,1% und Temperaturkoeffizent 15ppm/K
Temperaturkoeffizent der Potis, so bei 50 ppm/K.

von Christian F. (funke4ever)


Lesenswert?

Und wie hoch ist die Speisespannung? Die muss bei 1,3mA und 1k 
Speisewiderstand dann mindestens 1,3V höher liegen, also am besten sogar 
2V drüber. In deinem Fall wären das 18V oder ein kleinerer 
Speisewiderstand.

von Matthias (Gast)


Lesenswert?

Die Speisespannung ist 18V. Habe jetzt einen Spannungsfolger hinter die 
Referenzspannung gebaut und die Ausgangsspannungen sind nur noch 2mV 
daneben. Das kann ich mit der Software korrigieren. Danke bei allen für 
die Hilfe. Besonderen Dank an Jürgen Gensicke

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.