Widerstand-Arduino

Widerstände besitzen einen angegebenen Wert. Dieser Wert ist aber nicht unumstößlich, sondern hängt zum Beispiel von der Temperatur ab. Wächst dieser mit zunehmender Temperatur, so spricht man von einem PTC (positiver Temperaturkoeffizient) Widerstand. Bei einem NTC-Widerstand sinkt R mit zunehmender Temperatur T. Metallwiderstände gehören zu den PTC-Widerständen, da die bei höherer Temperatur zugenommenen Gitterschwingungen den Elektronentransport zunehmend erschweren.

Dies kann man sehr schön mit einer Schülerallee und einem einzelnen Schüler, welcher das Elektron spielt, nachstellen. Bei niedriger Temperatur schwingen die Gitteratome (die Schüler, welche die Allee bilden) noch wenig und das Elektron kann die Allee noch ohne größere Probleme durchwandern. Bei hoher Temperatur schwingen die Atomrümpfe aber sehr stark und das Elektron kommt kaum mehr voran. Bitte aber nicht wundern, wenn dieses Experiment ausartet und das Elektron sogar wieder zurückgeschleudert wird 😉

In diesem Experiment geht es darum, die Temperaturabhängigkeit eines Kupferdrahts quantitativ zu erfassen und den sog. Temperaturkoeffizienten α zu bestimmen. Dieser kommt in der Formel für den Widerstand R(ΔT) in Abhängigkeit von der Temperaturerhöhung ΔT vor:

Wie sieht nun der zugehörige Graph R(ΔT) bzw. R(T) aus?

Es handelt sich also um eine Gerade mit dem Anstieg k = R0 · α.

Wählt man allerdings eine höhere Temperatur T0 als Startwert, so nimmt auch R(T0) = R0 zu und demnach auch der Anstieg der Geraden k = R0 · α. Der lineare Graph mit konstanter Steigung ist also nur eine Näherung für relativ geringer Temperaturänderungen. Für einen größeren Temperaturbereich gilt die lineare Näherung nicht mehr und der Graph R(T) sieht dann wiefolgt aus:

In der Literatur wird der Temperaturkoeffizient α zumeist für eine Temperatur T = 20°C angegeben. Für Kupfer liegt dieser zum Beispiel bei 0.00393 1/°C, ist also relativ gering. Mal schauen, ob ich experimentell diesen Wert bestätigen kann…

Hier gibt es ein schönes Tool zur Berechnung des Drahtwiderstands in Abhängigkeit von der Temperatur: https://wetec.vrok.de/rechner/cspezir.htm

Fürs Experiment verwende ich einen Wasserkocher und eine Spule aus 0.15 mm Kupferlackdraht mit einer Länge von ca. 140 m:

Bei Zimmertemperatur liegt der Drahtwiderstand bei rund 156 Ohm:

Wie lässt sich nun der Widerstand mit einem Arduino ermitteln? Dieser verfügt ja nicht über einen Widerstandsmessmodus. Man kann aber mit dem analogen Eingang des Arduino auf den Widerstand rückschließen. Hierzu baut man sich einen gewöhnlichen Spannungsteiler aus Messwiderstand und einem bekannten, unveränderlichen Widerstand auf:

Hier meine Arduino-Experimentierplatine. Temperatur T und Widerstand R(T) werden auf dem 16 x 2 Display angezeigt:

Als Temperatursensor kommt ein DS18B20 zum Einsatz…

Den Temperatursensor und die Kupferspule hänge ich in den Wasserkocher:

Bei einer Temperatur von knapp 100°C ist der Drahtwiderstand von 156 Ω auf knapp 200 Ω angewachsen:

Die erhaltenen Messwerte und der Graph R(T):

Der Geradenanstieg k beträgt laut Graph k = 0.5928 Ohm/°C. Daraus folgt für den Widerstands-Temperaturkoeffizienten α von Kupfer mit R0 = R(20°C) = 152 Ohm:

Die Abweichung vom Sollwert beträgt lediglich 0.76%, Heureka… 🙂

Arduino-Code:

Zum Schluss noch das Youtube-Video zum Experiment: