Arduino Uno auf Amazon
Das Prinzip zur Messung eines unbekannten Widerstands beruht darauf, dass man zwei Widerstände in Serie schaltet, wobei die Stärke des einen bekannt sein muss. Außerdem sollte der bekannte Widerstand nicht zu klein sein (ungefähr 1kOhm), da der unbekannte Widerstand sehr klein sein könnte und durch zwei kleine Widerstände sehr viel Strom fließen könnte.
Durch das Messen der abfallenden Spannung kann man auf das Verhältnis schließen, wodurch man die Größe des unbekannten Widerstands errechnen kann.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
float Ausgangsspannung = 5.0; | |
int MessPin = 5; | |
int R1=1000.0; | |
long Messwert; | |
float SpannungR2; | |
float Widerstand; | |
void setup() | |
{ | |
Serial.begin(9600); | |
Serial.println("Widerstand messen:"); | |
Serial.println(); | |
} | |
void loop() | |
{ | |
//5 mal Messen und Mittelwert bilden | |
Messwert=0; | |
for(int i=0;i<5;i++){ | |
Messwert+=analogRead(MessPin); | |
} | |
Messwert=trunc(Messwert/5); | |
//Berechnen der Spannung | |
SpannungR2=(Ausgangsspannung/1023.0)*Messwert; | |
Serial.print("Spannung an R2: "); | |
Serial.print(SpannungR2,2); | |
Serial.println(" Volt!"); | |
//Ausrechnen des Widerstands mit Formel: (R2 = R1 * (U2/U1)) | |
Widerstand=R1*(SpannungR2/(Ausgangsspannung-SpannungR2)); | |
Serial.print("Der Widerstand hat "); | |
Serial.print(Widerstand,2); | |
Serial.println(" Ohm."); | |
Serial.println(); | |
delay(5000); | |
} |
Nach dem Upload des Sketches auf den Arduino und das Aufbauen der Schaltung müsst ihr am PC die serielle Konsole öffnen. Nun bekommt ihr alle 10 Sekunden die Stärke des momentanen Widerstands angezeigt.
In meinem Fall steckt ein 10kOhm Widerstand in der Schaltung, und der Arduino errechnete, dass er 10,1kOhm groß wäre. Der Hauptgrund für diese Abweichung ist, dass wir im Sketch von 5 V Spannung des Arduino ausgehen. Das ist jedoch falsch.
Um genauer zu messen, sollte man deshalb an den AREF Pin des Arduino eine "gesicherte" Spannung anschließen, etwa 3 AA Batterien, oder ein externes 5 V Spannungsgerät. Wenn man nun die neue Spannung im Sketch einträgt und erneut messen lässt ist das Ergebnis wesentlich genauer.
Eine weitere Möglichkeit wäre es, einen genaueren Referenzwiderstand zu wählen, meiner etwa hat eine Toleranz von 5%, was zum Messen eher ungünstig ist.
hallo michael wirklich sehr gut deine blogs bitte weiter so
AntwortenLöschendaumen hoch
Hallo
AntwortenLöschenSuper tutorial. Eine Frage warum wurde hier bei
SpannungR2=(Ausgangsspannung/1023.0)*Messwert;
mit 1023 gespaltet?