Instructions

52
11
KAPAZITÄTS
MESSGERÄT
Messgeräte mit geringsten Mitteln selbst zu bauen ist immer interessant
und spannend. Mit Arduino™ können wir mit geringsten Kosten und Auf-
wand ein Kapazitätsmessgerät für kleine Kondensatoren im Bereich von
1 nF bis zu ca. 100 μF für unser Hobbylabor programmieren. So funktio-
niert unser Kapazitätsmesser mit Autorange-Funktion:
Zu Beginn der Messung wird die Variable
C_time mit Null initialisiert. Der
Port D12 wird als Ausgang konfi guriert und danach sofort auf LOW (GND)
geschaltet, um den angeschlossenen Kondensator (Prüfl ing) vor der ei-
gentlichen Messung zu entladen.
Nach einer kurzen Endladepause von 1 Sekunde wird der Port D12 als
Eingang konfi guriert und der interne Pull-up-Widerstand aktiviert. Der
Pull-up-Widerstand lädt nun den zu prüfenden Kondensator so weit auf,
bis der Port D12 ein HIGH erkennt. Die Schwelle, ab wann der Digitalport
ein HIGH erkennt, liegt bei ca. 3,5V bei einer Betriebsspannung von 5V.
Dieser Pegel ist somit von der Betriebsspannung abhängig und wird im
Datenblatt zum Mikrocontroller mit Vccx 0,7 angegeben.
001 HIGH = 5V x 0
,7
Bis ein HIGH-Pegel am Digitalport erkannt wird, verstreicht eine gewis-
se Zeit, die wir innerhalb der Do-while-Schleife mit der Variablen
C_time
messen. C_time ist annähernd proportional zur Kapazität des Konden-
sators, d.h., ist
C_time sehr groß, ist auch die zu messende Kapazität
sehr groß.
Um nun einen richtigen Messwert zu erhalten, müssen wir die Variable
noch umrechen (
C_time Faktor). Der Wert (Faktor) muss experimen-
tell mit »ein paar Kalibrierkondensatoren« ermittelt werden, da die Er-
kennung eines HIGH-Pegels von Controller zu Controller trotz der Angabe
Vccx 0,7 im Datenblatt leicht unterschiedlich ausfällt und die Oszillator-
frequenz von 16 MHz nicht zu 100 % bei jedem Board gleich ist (Quarzto-
leranzen). Zu guter Letzt wird der Messwert noch in Nanofarad (nF) und
Mikrofarad (μF) mit einer einfachen If()-Abfrage aufgeteilt und auf dem
LCD ausgegeben, bevor wieder eine neue Messung startet.
10174-5 Conrad Arduino Lernpaket_09.indd 5210174-5 Conrad Arduino Lernpaket_09.indd 52 14.07.2015 08:10:2514.07.2015 08:10:25