Messungen im Arduino-Testlab
Elektronik-Labor Mikrocontroller PicoBasic TestLab
Der AD-Wandler im Arduino Nano liefert im Normalfall ein Ergebnis,
das relativ zu seiner Betriebsspannung VDD ist. Weil im Testlab mit
einer Auflösung von 8 Bit gearbeitet wird, steht 255 für die
Betriebsspannung, also 5 V. Ein Ergebnis von 100 bedeutet also 5 V *
100 / 255 = 1,96 V.
Die entscheidende Frage ist nun, wie genau stimmt die Betriebsspannung
5 V? Das kann man leicht mit einem Digitalvoltmeter am 5V-Pin
nachmessen. Ich finde hier nur 4,5 V. Der USB-Anschluss am PV liefert
zwar recht genaue 5 V. Bei mir ist aber noch ein USB-Hub dazwischen,
der anscheinend noch eine Schutzdiode enthält. Eine weitere Schutzdiode
im Nano liegt ebenfalls in Reihe zum 5V-Anschluss. So gehen rund 0,5 V
verloren. Und deshalb haben alle Messergebnisse einen Fehler von 10%.
Wenn ich irgendwo 4 V messe, sind es tatsächlich nur 3,6 V.
Aber da kann man etwas tun. Die Referenz des AD-Wandlers kann
umgeschaltet werden. Der Controller besitzt eine interne Referenz von
1,1 V, die man im MessLab einschalten kann und die dann tatsächlich am
REF-Anschluss anliegt. Mit dieser Einstellung ist der gesamte
Messbereich auf 1,1 V umschaltet. Diese Spannung ist recht genau und
unabhängig von Schwankungen der Betriebsspannung. Am REF-Pin habe ich
1071 mV gemessen, also eine Genauigkeit von ca. 3%.
Eine weitere Einstellung der Referenzspannung ist Ext, sodass man eine
externe Referenz anschließen kann. Dazu bietet sich die stabilisierte
Ausgangsspannung von 3,3 V des Nano an. Diese Spannung ist recht genau,
gemessen wurden 3,23 V. Zur Sicherheit sollte man einen Widerstand von
1 k zwischen 3V3 und REF legen. Mit einem Widerstand von 2,2 k lag am
REF-Pin eine Spannung von 3,02 V. Damit hätte ich einen Messbereich von
3 V und eine Genauigkeit von 1%.
Was passiert wohl, wenn ich die Referenz auf VDD stelle und dann den
3V3-Ausgang messe? Genau, dann müsste ich mehr als 3,3 V messen. Die
Messung mit dem Oszilloskop zeigt zuerst Vollausschlag, weil die
Referenz noch auf extern 3,3 V stand. Dann wurde auf VDD mit dem
Messbereich 5 V umgeschaltet und eine zu hohe Spannung von ca. 3,6 V
gemessen, weil VDD tatsächlich 10% zu klein war. Die Messung mit dem
Oszilloskop hat noch einen weiteren Vorteil. Man bekommt nämlich auch
Antworten auf Fragen, die zu stellen man vergessen hatte. In diesem
Fall kann ich im zweiten Teil seltsame Schwankungen sehen, die
tatsächlich nicht auf die stabilisierten 3,3 V zurückgehen, sondern auf
Schwankungen der USB-Betriebsspannung.
Eine weitere Möglichkeit bietet der 5V-Regler im Nano. Wenn man eine
externe Spannung von z.B. 9 V an Vin anschließt, wird VDD auf 5,0 V
angehoben. Die Genauigkeit liegt üblicherweise bei ca. 1%. Ich vermeide
aber lieber den Anschluss einer externen Spannung, weil damit ein
Risiko verbunden ist. Mit einer versehentlichen Verbindung zu
irgendeinem Pin des Controllers kann dieser beschädigt oder zerstört
werden. Genau das kann auch passieren, wenn ich den AD-Wandler
verwende, um die Spannung einer Batterie zu messen. Wenn die Spannung
größer als VDD ist oder im negativen Bereich liegt, kann der Controller
zerstört werden.
Gegen solche Gefahren hilft ein Widerstand von 10 k in der Messleitung.
Alle Anschlüsse des Controllers besitzen Schutzdioden nach GND und VDD,
die eine externe Spannung begrenzen sollen. Sie leiten ab einer
Überschreitung des erlaubten Bereichs von über 0,5 V. Dazu muss
allerdings der mögliche Strom begrenzt werden. Mit 10 k ist man meist
auf der sicheren Seite, jedenfalls wenn man sich auf ungefährliche
Spannungen bis 12 V beschränkt.
Für die Messung größerer Spannungen bietet sich ein Spannungsteiler an.
Mit 10 k und 100 k wird die Messspannung im Verhältnis 11 : 1 geteilt.
Aus 50 V werden damit ca. 4,5 V, also fast genau die reale Spannung,
die ich bei USB-Versorgung als Referenz habe. Damit bekomme ich eine
recht genaue Messung bis 50 V. Die Störungen auf der
USB-Versorgungsspannung kann ich zusätzlich verringern, wenn ich einen
Elko mit 100 µF an REF lege.
Für einen Test des vergrößerten Messbereichs wurde ein Elko mit 100 µF,
35 V angeschlossen und mit einem Labornetzgerät auf 35 V geladen. Das
entspricht sieben Skalenteilen und wurde mit guter Genauigkeit gemessen.
Nach dem Öffnen der Verbindung erschien die typische, exponentielle
Entladungskurve. Der Kondensator wurde mit 110 k entladen. Für 100 µF
ergibt sich eine Zeitkonstante T = RC von 11 s. In dieser Zeit
sollte sich der Kondensator bis auf 1/e entladen haben, also bis auf
ca. 13 V. Das kann im Rahmen der Messgenauigkeit bestätigt werden.
Siehe auch: Logarithmische Strommessung im TestLab
Elektronik-Labor Mikrocontroller PicoBasic TestLab