Wie verstärke ich ein 0-100-mV-Signal an einen ADC mit einem Bereich von 0 bis zu einer bestimmten Referenzspannung?

Ich ignoriere das Problem des Rauschens und möchte ein "statisches" 0-100-mV-Gleichstromsignal mit einer bestimmten Spannungsreferenz auf den Bereich des 10-Bit-ADC des ATmega328P verstärken. Nehmen wir an, diese Referenz ist 4,096 V und nennen sie AREF. Das gibt mir 4mV-Schritte und ich brauche eine Verstärkung von 40,96.

Soweit ich das bisher verstanden habe, könnte ein In-Amp wie der AD623 dafür funktionieren. Es hat einen Eingangsbereich von 150 mV unter Vs- (GND in meinem Fall) bis 1,5 V unter der positiven Schiene (was in meinem Fall 3,5 V bei einer 5-V-Vcc beträgt). Mein Problem ist, dass der Ausgangsspannungsbereich auf a Einzelversorgung hat mindestens 10mV. Das bedeutet, dass der ADC 0 V, 4 mV und 8 mV alle als "0" sieht. Wie kann dies vermieden werden?

Ich kann nur etwa 1,22-mal mehr verstärken, bevor ich auf die Schienen am Ausgang treffe, also sehe ich nicht, wie ein Spannungsteiler am Ausgang helfen würde ...

Soweit ich weiß, gibt es keine Möglichkeit, die untere Spannung des ATmega328P-ADC zu erhöhen, ohne so etwas wie einen differenziellen ADC zu tun, von dem ich gelesen habe, dass eine Kalibrierung erforderlich ist, die relativ schwierig klingt.

Gibt es einen Grund, warum Sie nicht einfach 100 mv in den AREF-Pin für den ADC stecken können? (28.5.2 im Datenblatt)
Ich habe gelesen, dass die 328p keine AREF unter 1 V verwenden können. Außerdem ist dies nicht der einzige Bereich, den ich brauche, und obwohl AREF umgeschaltet werden kann, möchte ich es lieber nicht.
Warum nicht einen Offset zum Eingang des Verstärkers hinzufügen, wodurch der Ausgang 10 mV beträgt, wenn das Eingangssignal 0 ist? Sie würden den Dynamikbereich des Signals verlieren (weil Sie den Ausgang immer noch über den vollen 0-100-mV-Ausschlag benötigen würden), aber dann einfach mit dem Verstärker davonkommen. Gibt es eine starke Anforderung, den vollen Bereich des ADC zu nutzen?
@iheanyi, an dieser Stelle ist das die viel einfachere Option mit viel einfacher zu berechnendem Fehler. Ich habe keine starke Anforderung, die gesamte Bandbreite zu nutzen. Was ist der beste Weg, um diesen Offset hinzuzufügen? Es fällt mir schwer, meinen Kopf darum zu wickeln.
@Anthony, mir ist gerade klar geworden, dass Sie einen In-Amp verwenden möchten, daher ist dies möglicherweise keine Option (weil Sie die Rückkopplung steuern müssen). Mit einem Operationsverstärker (um einen Differenzverstärker zu bauen) können Sie Ihrem Signal einen Offset hinzufügen: Siehe en.wikipedia.org/wiki/… Hier würden Sie Rg eher mit dem Offset als mit Masse verbinden. Zur Erzeugung des Offsets genügt ein Spannungsteiler. Mit Rg == Rf, Vout = Voff + (Rf / R1)*(V2 - V1)

Antworten (3)

Wenn Sie den Ausgang wirklich auf Masse bringen müssen, damit selbst ein "Rail-to-Rail" -Ausgang nicht gut genug ist, geben Sie ihm negative Leistung. Ein Operationsverstärker zum Ansteuern eines A/D-Eingangs benötigt nicht viel Strom, daher sollte eine Ladungspumpe ausreichen.

Alles, was Sie brauchen, ist ein konstant umschaltender digitaler Ausgang. Dies kann ein NPN/PNP-Emitterfolgerpaar ansteuern. Das plus zwei Schottky-Dioden und zwei Kappen ergibt eine kleine negative Spannung. Mikrocontroller können oft einen Pin mit einem "Taktausgang" oder ähnlichem ansteuern, was nützlich ist, um daraus eine Ladungspumpe zu machen. Nach den verschiedenen Spannungsabfällen haben Sie am Ende nur etwa -1,2 V, wenn Sie mit einer 3,3-Vpp-Rechteckwelle beginnen, aber das reicht aus, um viele Operationsverstärker weit über ihre untere Schienengrenzregion hinaus zu bringen.

Ein mögliches Problem dabei ist, dass der Operationsverstärker jetzt unter die gültige A/D-Eingangsspannung fahren kann. Mit der richtigen Schaltung und der Sicherstellung, dass die Eingangsspannung zum Operationsverstärker innerhalb eines bestimmten Bereichs bleibt, sollten Sie wissen können, dass der Ausgang nicht negativ wird. Dies sollten Sie jedoch sorgfältig abwägen.

Olin wieder zur Rettung :) Danke. Nachdem ich so viel Datenblätter von Operationsverstärkern gelesen hatte, wurde ich wirklich neugierig auf negative Versorgungen und wusste nicht, wie man eine erstellt, außer zwei Batterien zusammenzukleben und den Mittelweg zu nennen.
So etwas wie der LM7705 ist nützlich, um eine kleine negative Spannungsversorgung mit minimalen Komponenten zu erstellen.
Das sieht gut aus, ist aber in DIP nicht verfügbar. Der LMC7660 ist ähnlich (flexibler) und in DIP erhältlich, aber teurer.

Wenn Sie sich Abschnitt 28.6.3 des ATmega328P-Datenblatts ansehen, werden Sie sehen, dass es beginnt, den Nullpunktverschiebungsfehler zu definieren, den Sie erhalten, wenn Sie den ADC verwenden. Das Ergebnis davon ist, dass es äußerst sinnvoll ist, (sagen wir) die unteren oder oberen 10 mV des ADC-Bereichs nicht zu verwenden, da Sie nicht garantieren können, dass der ADC nicht die "Endanschläge" erreicht hat: -

Geben Sie hier die Bildbeschreibung ein

Das obige Bild zeigt den Effekt von Null- und Verstärkungsfehlern und bitte beachten Sie, dass diese sowohl additiv als auch subtraktiv sein können.

Sie müssen also mit Nullfehlern und Verstärkungsfehlern fertig werden, und dies verringert Ihren tatsächlichen numerischen Bereich - Sie müssen natürlich damit leben oder jeden ADC-Eingang spezifisch kalibrieren.

Wenn Sie auf Seite 374 nachsehen, erhalten Sie reelle Zahlen: -

  • Der Offset-Fehler wird als 2 LSBs bei einer 4-V-Referenz angegeben, was bedeutet, dass der Nullpunkt 0 V +/- 7,8 mV betragen kann.
  • Der Verstärkungsfehler beträgt ebenfalls 2 LSBs, aber Sie haben den zusätzlichen Fehler, dass die Spannungsreferenz nicht genau 4,0960000 Volt beträgt. Sehen Sie sich die Toleranz dafür an.

Kurz gesagt, verwenden Sie einen Rail-to-Rail-Operationsverstärker, der gut geeignet ist, um auf 10 mV herunterzukommen, und leben Sie mit dem Problem wie alle anderen auch.

Erstens ist es verschwenderisch, einen Instrumentenverstärker zu verwenden, wenn der Eingang auf Masse bezogen ist. Ein normaler Operationsverstärker in nicht invertierender Konfiguration funktioniert gut (eigentlich in jeder Hinsicht besser).

Wenn der Operationsverstärker nicht ganz auf 0 V geht, können Sie eine Diode wie folgt in Reihe mit dem Ausgang schalten:

schematisch

Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan

Sie könnten auch eine negative Versorgung für den Operationsverstärker erstellen, aber im Allgemeinen verursacht dies zusätzliche Probleme, da der Operationsverstärker jetzt negativ genug schwingen kann, um die absolute maximale negative Eingangsspannung des Chips zu überschreiten. Bei einigen MCUs können Sie innerhalb der Grenzen bleiben, indem Sie eine Versorgung schaffen, die -300 mV nicht überschreitet, und es gibt tatsächlich einen Ladungspumpenchip, der genau dafür ausgelegt ist. Es gibt auch Pflasterlösungen wie das Hinzufügen eines Vorwiderstands und einer Schottky-Diode zur Masse, aber sie können andere Probleme haben, und keine von ihnen verursacht garantiert keine (möglicherweise subtilen) Probleme im normalen Betrieb, selbst wenn dies nicht der Fall ist die absoluten maximalen Spannungs- oder Eingangsstromspezifikationen überschreiten.

Eine andere Möglichkeit, die je nach den Interna des von Ihnen verwendeten In-Amp funktionieren kann oder nicht, besteht darin, den Referenzstift auf (sagen wir) 20 mV zu erhöhen und die unteren paar Zählwerte des ADC wegzuwerfen. Wenn ein interner Knoten des Eingangsverstärkers in die Sättigung gerät, funktioniert dies möglicherweise nicht, und es besteht das zusätzliche Problem, die niederohmige 20-mV-Quelle für die Referenz bereitzustellen, da die meisten Eingangsverstärker keinen internen Puffer für die Referenz haben.


Sie müssen etwas vorsichtig sein, wenn Sie sehr nahe an der Sättigung des Verstärkers arbeiten, ihn aber nicht wirklich auf die Schiene fahren – die Eigenschaften können sich ziemlich ändern und es kann zu einer Mikroinstabilität in der Nähe der Schiene kommen. Natürlich finden Sie dies nicht im Datenblatt und Makromodelle modellieren das Verhalten möglicherweise nicht genau.

Danke. Können Sie erklären, warum ein In-Amp in diesem Fall schlechter ist?
Die Leistung (Rauschen, Offset usw.) ist im Allgemeinen schlechter für einen bestimmten Preis oder für die besten verfügbaren Teile. Die Auswahl ist geringer und die Kosten höher. Je nach Gleichtakt und Versorgungsspannungen gibt es mehr Möglichkeiten für interne Sättigung. Natürlich, wenn Sie wirklich einen echten Differenzeingang brauchen, dann brauchen Sie ihn. In einigen Fällen können Sie anstelle eines Eingangsverstärkers einen einzelnen Operationsverstärker als Differenzverstärker verwenden, wenn die Impedanz gegen Masse auf der Eingangsrückleitung niedrig ist.
Irgendwelche Empfehlungen in DIP-Form?
DIP ist ziemlich einschränkend, Sie sollten vielleicht einen Niederspannungs-Choppertyp wie MCP6V71 in sot-23 in Betracht ziehen. Vos liegt weit unter 1 LSB und könnte nahe genug an Vss schwingen, um die Diode zu vermeiden.