Mikrocontroller auf Abwegen A/D-Wandlung ohne A/D-Wandler

Für einfache A/D-Wandlungen mit geringer Bandbreite eignen sich auch einfache Mikrocontroller. Eine solche A/D-Wandlung ohne A/D-Wandler kommt nicht nur mit weniger Bauteilen aus, sondern kann auch die meisten Messfehler kompensieren.

Das Implementieren einer A/D-Wandlung in einer Schaltung ist eine der gängigsten Aufgaben für Entwickler, und eine, die sich auf verschiedenen Wegen realisieren lässt. Für viele einfache Anwendungen mit geringer Bandbreite wie etwa bei einem DC-Voltmeter besteht das Ziel darin, trotz geringerer Implementierungskosten eine hohe Auflösung für die A/D-Wandlung zu erzielen.

Bild 1 zeigt den vereinfachten Plan einer solchen Schaltung. Operationsverstärker U1 ist mit zwei verschiedenen Eingangsspannungen verbunden, die zu unterschiedlichen Zeiten durchgeschaltet werden. VREF ist eine feste Referenzspannung, die zur Kalibrierung verwendet wird. VMEAS ist die unbekannte Spannung, die zu wandeln ist. Widerstand R1 und Kondensator C1 bilden eine Ladeschaltung für die Umwandlung der Eingangsspannung in eine Zeit. Der Operationsverstärker U1 eliminiert das logarithmische Verhalten, das auftreten würde, wenn die Eingangsspannung direkt an R1 und C1 angelegt würde.

In der vorliegenden Schaltung steuert ein 8-Bit-Mikrocontroller vom Typ »PIC16F5X« von Microchip den Betrieb des Operationsverstärkers U1 durch das Ein- und Ausschalten der vier Schalter S1 bis S4, beispielsweise implementiert mithilfe des Bausteins »74HC4066N«. Darüber hinaus misst der Mikrocontroller die Zeit und berechnet den Digitalwert der unbekannten Eingangsspannung. Die Schaltung lässt sich auch als Current-Mode-A/D-Wandler nutzen. In diesem Fall ist keine Eingangsspannung für den Stromwandler nötig, und der Referenzstrom sowie der Eingangsstrom werden beide über Analogschalter direkt in den Kondensator geführt.

Der Wandler benötigt lediglich fünf externe Bauteile und lässt sich per Soft- und Hardware für Wandler-Auflösungen von 6 Bit bis 10 Bit sowie für Wandlungszeiten von 250 µs oder länger konfigurieren. Die Methode eignet sich sowohl für eine Spannungs- wie auch für eine Strom-Wandlung. Sie verwendet eine Software-Kalibrierungstechnik, die Zeit- und Temperaturdrift sowie auch Bauteilfehler kompensiert.

Ablauf der Wandlung

Bild 2 zeigt die verschiedenen Stufen des Wandlungsvorgangs anhand des Verlaufs der Spannung VO am Ausgang des Operationsverstärkers U1. Zwischen t0 und t1 sind die Schalter S1 und S3 geschlossen; S2 und S4 sind offen, und der Pin RA0 am Mikrocontroller wird per Software auf Massepegel gehalten.

Daraus ergibt sich eine Ersatzschaltung wie in Bild 3 gezeigt. Die OPV-Ausgangsspannung VOUT ist gleich VREF, da VIN gleich VREF ist, und S3 eine Rückkopplung mit Verstärkungsfaktor 1 erzwingt. C1 entlädt sich oder ist anfangs nach dem Reset-Zustand bereits entladen. Jedenfalls gewährleistet diese Phase, dass C1 komplett entladen wird, bevor die Schaltung in die nächste Funktionsphase übergeht.

Nach Ablauf von t1 bleibt S1 geschlossen, S2 bleibt offen, S3 ist offen, S4 ist geschlossen, und RA0 ist als Eingangspin konfiguriert. Die daraus folgende Ersatzschaltung zeigt Bild 4. Abhängig von VREF beginnt VOUT linear anzusteigen, während C1 geladen wird. Der lineare Anstieg von VOUT setzt sich fort, bis sie die Eingangs-Schwellenspannung Vth des Mikrocontrollers erreicht. Dies erzeugt einen Software-Kalibrationswert, welcher der Zeit tref entspricht. Dieser Kalibrierungswert wird gemessen und dient zur Kompensation der meisten Schaltungsfehler, zum Beispiel der Ungenauigkeiten bei den Widerstands- und Kondensatorwerten sowie Veränderungen bei Vth und Temperaturvariationen.

Nachdem der Software-Kalibrierungswert zum Zeitpunkt t2 gemessen ist, werden S2 und S3 geschlossen; S1 und S4 sind offen, und RA0 wird wieder per Software auf Massepegel gezogen. Damit ergibt sich das gleiche Ersatzschaltbild wie in Bild 3. Allerdings ist VOUT gleich VMEAS, da VIN gleich VMEAS ist und S3 eine Rückkopplung mit Verstärkungsfaktor 1 erzwingt. C1 entlädt sich von t2 bis t3. Nach Ablauf von t3 bleibt S2 geschlossen, S1 bleibt offen, S3 ist offen, S4 ist geschlossen und RA0 ist als Eingangspin konfiguriert. Damit ergibt sich die gleiche Ersatzschaltung wie in Bild 4.