User manual
37 38
5.5 Voltmeter mit AD Umsetzer und Kalibrierung - PC Schnittstelle
Unser Baustein ist auch hervorragend als Voltmeter geeignet. Man muss dazu nur noch Messleitungen an-
schliessen. Der Klemm-Brick eignet sich dazu sehr gut und ist in der Schaltung eingebaut. Nun kann man auch
beide A/D-Umsetzer an den Ports A0 und A1 verwenden. Im Programm wird die Spannung aus dem digitalisier-
ten Wert berechnet und ausgegeben. Als einfachen Schutz haben wir hier einen Doppelwiderstand eingebaut.
Er dient als Strombegrenzung, wenn man Spannungen größer als 5V anlegt und die Dioden schützen vor Span-
nungen kleiner 0 Volt (z.B. beim Verpolen an Umess). Im Brick ist noch je ein 100 Ohm Widerstand am Eingang:
Damit wird dann gesichert, dass nur die externen Dioden bei negativen Spannungen ansprechen und nicht die
im Chip eingebauten Dioden. Man sollte dies aber trotzdem vermeiden. Über den 2.2k Ohm Widerstand iesst
bei 9V ein maximaler Strom von 4.1mA. Die Schutzmaßnahmen bewirken auch eine Veränderung des Messer-
gebnis, daher muss man für genaue Messungen eine Kalibrierung durchführen.
Zur Kalibrierung benötigt man eine denierte Spannungsquelle. Daraus kann man dann einen Korrekturfaktor
berechnen. Den bringt man dann in die Formel ein.
Die Spannung muss genau bekannt sein, entweder durch ein genau einstellbares Netzteil, oder man misst eine
Spannungsquelle mit einem genauen Voltmeter und verwendet dann diese. Wird z.B. bei einer 2V Quelle der
Wert 2100mV bei uns angezeigt, so benötigt man einen Korrekturfaktor von 2/2.1 den man in die Umrech-
nungsformel für voltage1= oder voltage2= mit reinmultipliziert.
Also Voltage1 = value1 * 5000.0 / 1023.0 * 2.0 / 2.1; die Konstanten kann man auch ausmultiplizieren, so ist
das Program aber leichter lesbar. Nun kommt noch die Frage nach der Auösung. Bei uns liegt ein 10 Bit
A/D-Umsetzer vor, also hat er eine Auösung von 1/1024, die einem Bit entspricht. Damit ist die kleinste
Spannung, die man gerade noch messen kann, gerundet ca. Umin = 5.0V / 1024 = 4.9mV
+
-
9V
1A
SCLS DA
+9V
A0
A1
Tx
Rx
PD2
SCLKMOSI
PD3
PD 6
PD 4
PD 5
PD 7
A7
A3
A2
A6
NANO
to
Br ick`R`
3,3V 5V
USB
B0
SS
MISC
B1
I²C
// DE_12 AD Umsetzer als Voltmeter
// CTRL-SHIFT-M fuer
// seriell Port Monitor
#dene PORTAD0 0 // Kanal 0 bei A0
#dene PORTAD1 1 // Kanal 1 bei A1
// Die Ausgabe erfolgt am PC, spaeter
// werden wir noch Anzeige Bricks anschliessen
void setup() { // start
Serial.begin(9600); // die sogenannte BAUDRate
// damit werden die Daten an den PC übertragen
// 9600 Baud = 9600 Bits/Sekunde
}
void loop() {
int value1,value2; // diesmal gleich zwei analoge Werte speichern
double Voltage1,Voltage2; // und beide in Spannung umrechnen
value1 = analogRead(PORTAD0); // A0 einlesen
value2 = analogRead(PORTAD1); // A1 einlesen
// Umrechnen value in Vteiler
Voltage1 = value1 * 5000.0 / 1023.0; // ggf Korrekturfaktor
Voltage2 = value2 * 5000.0 / 1023.0; // verwenden
Serial.print(Voltage1); // Ausgabe der Spannung vom Kanal 0
Serial.print(„mV „); // Text in doppeltem Anfuehrungszeichen
Serial.print(Voltage2); // Ausgabe der Spannung vom Kanal 1
Serial.println(„mV „); // Text in doppelten Anfuehrungszeichen
}
Ausgabe:
943.30mV 953.08mV
943.30mV 957.97mV
938.42mV 953.08mV
938.42mV 953.08mV
938.42mV 948.19mV
938.42mV 943.30mV
933.53mV 943.30mV
933.53mV 943.30mV
928.64mV 938.42mV
913.98mV 923.75mV
Umess
Zur Verwendung des Klemm-Bricks, einfach
mit einem kleinen Schraubendreher auf
den Spalt drücken und dann ein Messka-
bel einführen, danach Schraubendreher
loslassen.
1N41481N4148
Was passiert? Wenn das Terminal
aktiviert ist, erscheint eine Zeile
mit der gemessenen Spannung von
Kanal A0 und daneben von Kanal A1.
Für einen schnellen Test kann man
die statt des Klemm-Bricks einen
Mass-Brick einsetzen. Dann sollte
der Wert fast 0mV sein. Offen ist er
natürlich undeniert und man muss
erst eine Spannungsquelle anschlies-
sen (z.B. Batterie).
ACHTUNG:
Terminal aktivieren!
Dazu beim Arduino Programm,
CTRL und SHIFT und M drücken
(CTRL=STRG je nach Tastatur).
Dann poppt ein Fenster hoch in
dem die Infos stehen.
Ggf. muss man die Baudrate im
Terminalfenster auf 9600 ein-
stellen, so daß diese mit unse-
rer im Programm übereinstimmt.










