Kapazitätsmesser für den Bereich von 1 pF...50 µF mit Hilfe des 16C84 

 

 

Die Aufladung eines Kondensators C über einen Widerstand R erfolgt gemäß der Formel

Die Näherung gilt für hinreichend kleine Werte von t / RC. In diesem Fall ist bei gegebenem Widerstand R und Spannungsverhältnis U/U0 die Kapazität proportional zur Ladezeit. Das Meßprinzip des vorliegenden Kapazitätsmesser beruht darauf, daß ein Kondensator über einen Widerstand aufgeladen wird. Die Ladespannung U wird über PortA4 des PIC 16C84 gemessen. Im Gegensatz zu den anderen Eingängen ist diesem Pin ein Schmitt-Trigger vorgeschaltet, der bei einer definierten Spannung eine 1 in PortA4 erzeugt.

Für den Meßbereich 1 pF ... 99 pF erfolgt die Zeitmessung dadurch, daß man zählt, wie oft die Meßschleife durchlaufen wird, bis PortA4 auf High geht. Der Ladewiderstand und die Länge der Meßschleife sind so ausgelegt, daß der Zähler den Wert für C in pF enthält.

Für die weiteren Meßbereiche wird ein etwas modifiziertes Verfahren angewendet. Während des Ladevorgangs wird eine Verzögerungsschleife definierter Länge durchlaufen. Nach jedem Durchlauf dieser Verzögerung wird ein zweistelliger Dezimalzähler (Anzeigewert) solange hochgezählt, bis die Anzeige 99 überschreitet oder aber die Grenzspannung an A4 erreicht wurde. Im ersten Fall wird der Ladevorgang abgebrochen, der Kondensator entladen und der Exponent um eins erhöht. Dieser Zyklus wird solange fortgesetzt, bis Pin A4 auf High steht und gleichzeitig die Anzeige einen Wert zwischen 10 und 99 hat.

Die Länge der Verzögerungsschleife wird für jeden Meßbereich durch zwei Verzögerungskonstanten bestimmt, die im Daten-EEPROM des PIC abgelegt sind und der Reihe nach ausgelesen werden, bis zum ersten Mal eine gültige Messung erfolgt. Diese Verzögerungskonstanten dienen auch dazu, das Gerät bei festgelegten Ladewiderständen zu kalibrieren. Gleichzeitig wird auch noch ausgelesen, welcher der beiden Pins PA0 bzw. PA1 zum Laden des Kondensators verwendet wird. PA0 verwendet einen Ladewiderstand von etwa 3 M und wird für die kleineren Meßbereiche verwendet. An PA0 wird über einen Widerstand von 50 k sehr viel schneller geladen.

Besonders für kleine Kapazitäten muß die Eigenkapazität des Gerätes berücksichtigt werden. Sie wird bei Beginn jeder Messung ermittelt. In einer besonderen Routine precharge wird für den kleinsten Meßbereich diese Eigenkapazität als Startwert für den Schleifenzähler verwendet und somit die Eigenkapazität des Gerätes bei der Anzeige eliminiert.

Der gemessene Wert wird wie folgt mit Hilfe von 7-Segment-Anzeigen dargestellt: 47 3 bedeutet 47 000 pF = 47 nF. Zur Übertragung der sieben Bits zur Ansteuerung der Anzeige wird PortB0..6 verwendet. Das betreffende Byte zur Ansteuerung wird ebenfalls dem Daten-EEPROM entnommen. Die verbleibenden freien Pins PB7, PA2 und PA3 reichen gerade noch aus, um die drei Anzeigen zu multiplexen.

Download Schaltpläne, ASM- und HEX-Dateien