VCC messen beim Arduino Mega 2560 | ||
Die USB Versorgungsspannung soll ca. 5V betragen, weicht in der Praxis aber häufig deutlich davon ab. Lange Leitungen und USB Hubs können auch mal 4,5 V am Arduino Board liefern. Soll der Arduino Messaufgaben mit dem eingebauten AD Wandler erledigen ist es wichtig die Versorgungsspannung genau zu kennen, weil der AD Wandler Messwert sich hierauf bezieht. Der Messwert 1023 ist also VCC. Für das Uno Board ist eine Messung mit Hilfe der Internen Referenzspannung im Netz dokumentiert. Für den Mega war aber nichts zu finden, deshalb habe ich hier die 3,3V Spannung zur Messung herangezogen und mit einer Brücke direkt auf den A/D Wandler (hier PIN A14) gelegt. Da die 10 Bit AD Wandler immer zu VCC messen entspricht das Messergebnis 1023 der VCC Versorgungsspannung. VCC . 1023 Damit ist VCC = 3,3 V / Messwert (AD) * 1023 Die Messfehler sind: 1. Der Messfehler der AD Wandlung beträgt +-1 Bit und das sind ca. 5V / 1023 * 2 = 9,8 mV. 2. Der 3,3V Regler hat eine Ausgangsspannungsabweichung lt. Datenblatt von max. 1,5% das sind 4,95 mV. 3. Bei Ausgangsströmen <50mA ändert sich die Ausgangsspannung laut. Datenblatt um 1,5% (5mV) und bei bis zu 150mA um 2,5% ( 8,2mV). Das kann hier vernachlässigt werden wenn: a) kein weiterer Strom aus dem 3,3V Ausgang genommen wird oder b) der abgenommene Strom ziemlich konstant ist und die 3,30V Spannung mit dem Multimeter kontrolliert und im Programm angepasst wird. 4. Über den Temperaturbereich von 10°C bis 30°C ändert sich die Ausgangsspannung laut Datenblatt um ca. 6 mV. Wir können also in der Praxis mit einem Messfehler von < 16 mV rechnen. Zusätzliches Mitteln über mehrere Messungen verbessert die Genaugkeit. Die fertige Arduino Datei zum Download. Hier der Arduino Programmcode mit Kommentaren:
Das Programm lässt sich auf allen Arduinos verwenden. Es muss ggf. der A14 Pin geändert werden, da z.B. ein Arduino Uno nur 5 A/D Wandler Eingänge hat. Fragen hierzu kann und werde ich aus Zeitgründen nicht beantworten.
letzte Änderung 3.2014 |