Hallo zusammen, im Bezug auf die Genauigkeit gibt es bei ADCs ja verschiedene Angaben wie INL oder DNL, etc. mein Problem ist jetzt abzuschätzen, was genauer ist, bzw weniger Fehlerbehaftet. Konkret geht es darum, ob ich meine ADCs des µCs verwenden soll, oder externe ADCs. Bei meinem µC (R5F2122CKFP) werden DNL und INL der ADCs gar nicht angegeben, es steht lediglich eine "Absolute Accuracy" mit +-5LSB im Datenblatt. In einem Datenblatt eines externen ADCs stehen zB folgende Werte: DNL: +-1LSB INL+-1LSB Offset Error: +-3LSB Gain Error:+-3LSB Wie kann man daraus die "Absolute Accuracy" berechnen? Einfach zusammenzählen, dann hätte man ja den worst-case. Oder alle fehler erst einzeln quadrieren, dann addieren und die wurzel daraus ziehen? letzteres entspräche dann 4,5LSB Generell ist es ja so, dass ein µC-interner ADC schon durch die unmittelbare Nähe zum digitalen Teil eher ungenauer ist, als ein externer ADC, der die EMV-Einflüsse des µC nicht so stark zu spüren bekommt. Meine Messwerte die ich erfassen würde beginnen bei Spannungen ab 20mV. Daher sehe ich einen µC-internen ADC kritisch an, da der digitalteil in unmittelbarer Nähe ist. Falls das aber doch ginge wäre es super, dann würde ich mir kosten und platz sparen. Meine Vref wären 3,0V und der µC hat einen ADC mit 10bit und +-5LSB absolute accuracy. Ein LSB wären dann bei mir 0,002929V. Wenn die Genauigkeit bei +- 5LSB liegt, dann wäre die Abweichung ja bei 0,0146V. Das heißt doch, dass die Eingangsspannung des ADC um +-0,0146V falsch eingelesen werden kann. Sprich: obwohl 0,02V anliegen kann es sein dass der Ausgegebene ADC-Wert einer Spannung von 0,02V+-0,0164V entspricht. Oder täusche ich mich da? Fazit wäre, dass der µC-interne ADC für 20mV Eingangsspannung ungeeignet ist. Stimmt doch? Ist eine absolute Genauigkeit von +-5LSB eher schlecht oder gut im Vergleich? einen Quantisierungsfehler von 0,5LSB hat ja eh jeder ADC. Kann man bei der Absoluten Genauigkeit von +-5LSB nicht noch durch kalibrierung etwas rausholen? Grüße, Michael
Bei dem was Du da an Daten angibst kann man nur sagen nehm nen externen ADC. Gain und Offset Fehler kann man gut kompensieren aber die nichtlinearen Fehler bedeuten Aufwand. Was genau... mit welcher Genauigkeit willst Du messen ?
durch eine deutlich geringere Vref kannst Du die Auflöung um 20mV herum deutlich verbessern.
Es gibt µCs mit guten ADCs drin, AD hat einen wo sogar ein 24 BIT AD drin sein soll. So EMI verseucht sollte die Umgebung im µC nicht sein, dass man nicht wenigstens eine brauchbaren 10 Bit AD hinkriegt. Eine Schwierigkeit ist da eher schon die Masse, wenn man keinen Differenzeingang hat. Die Fehler des Internen ADs werden vermutlich so ähnlich aufgeteilt sein, wie beim externen AD. Der Gain und Offest Anteil ist relativ leicht zu korriegieren. So viel besser sieht der externe AD nicht aus. Für eine sehr kleine Spannung sollte der Gain Fehler des ADs ziehmlich zu vernachläsigen sein. Das wären ja nicht konstant z.B. 3 LSB (Daten für den externen AD), sondern eher 0,3% vom Messwert. Die Werte von INL und DNL kann man auch nicht so ohne weiters zusammenzählen, denn besser als die Hälfte der DNL sollte die INL nie werden.
>> Es gibt µCs mit guten ADCs drin
So ist es. Ich habe mir mal das Datenblatt angesehen und der hier
gennante MC hat einfach einen sehr schlechten Wandler. Mir fehlt immer
noch eine Antwort... welcher Bereich soll gemessen werden. In Bezug auf
die gemachten Angaben läßt sich nicht viel sagen.
Also mal angenommen du hast ne UREF von 1V dann kannst Du locker bis auf
1mV auflösen... 20 mV bezogen auf was.
Wie gesagt, Offset, Gain läßt sich korrigieren und bei entsprechender
Kenntnis der anderen Parameter kann man eine ganze Menge herausholen...
ABER wieviele Meßwerte brauchst Du pro Sekunde ? welcher
Eingangsspannungsbereich etc... etc... und was wird ausgewertet ?
hallo zusammen, vielen Dank für die schnellen Antworten. Mein Vref ist 3V, damit werden unterschiedliche Sensoren erfasst. Unter anderem Gassensoren und auch ein Pt100. beim Pt100 wären 5mV 1°C und das sollte noch zu detektieren sein. mit dem 10bit ADC des µCs kann man das ja vergessen., da liege ich mit der Accuracy ja schon bei 2,7°C abweichung vom Messwert. habe mir schon gedacht, dass der Wandler schlecht ist, aber danke nochmal für die Bestätigung. Also Übersichtlich: - Bereich: 0v bis 3V(=Vref) - Schritte des Pt100: 5mV/°C - Schritte der restlichen Sensoren: 20mV - Zeitunkritische Messungen (maximal 1 Messwert/Sekunde) Dabei muss es sich aber nicht um einen einzigen ADC handeln. Ich bin noch auf der Suche nach einem 14bit oder 16bit ADC, der einen Temperaturbereich von -40°C bis 125°C aushält. Grundgedanke war, dass insbesondere bei der Messung mit dem Pt100 mit steigender Bit-Zahl, das LSB kleiner wird. Ab einem 14Bit-Wandler (LSB=0,000183V @ Vref=3V) dürften auch bei einer Accuracy von +-5LSB keine Probleme mehr auftauchen. Dass Vref auf 3V festgelegt ist, ist schon relativ fix, da ich auf meiner Platine eine maximale Spannung von 3,3V zur Verfügung habe. Weiter runter will ich auch nicht gehen, auch wenn dadurch die Auflösung steigt. Bestimmte maximalwerte der Sensoren gehen bei derzeitiger einstellung eben bis knapp 3V und sollen detektiert werden können. Schönen abend noch und Grüße, Michael
Wäre es denn eine Option, den PT100 einfach mit dem vierfachen Strom zu betreiben? - dann hätte er auch 20mV/K.
Das ginge schon, allerdings müüsste man dann Pulsen, damit die eigenerwärung durch den Strom nicht zu hoch wird. Problem wäre dabei, dass ich die gewünschte maximaltemperatur nicht mehr messen kann. mit den bisherigen Daten kann ich bis 300°C messen (bei Vref=3V). Mit dem vierfachen Strom könnte ich nicht mehr bis 300°C messen. ICh werde auf jeden Fall für die Temperaturmessung einen externen ADC verwenden. Zum einen bin ich damit weg von digitalen Störern (µC)und zum Anderen ist das LSB kleiner (bei 12bit oder 14bit), so dass INL und DNL Fehler nicht mehr so ins Gewicht fallen. Die Auflösung wird auch noch verbessert. Grüße
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.