Weitere Vorschläge zu diesem Thema mit den Boards: Prop-BoE - Prop-AB - BASIC Stamp - Raspberry Pi
Der LM34 von TI liefert eine lineare Ausgangsspannung von 10 mV pro Grad Fahrenheit. Der LM35 ist baugleich dem LM34 und liefert ebenfalls bei 10 mV Ausgangswerte pro Grad Celsius. Beide Bausteine haben einen großen Eingangsspannungsbereich von 5V … 30V und sind einfach in der Handhabung. Die Genauigkeit wird vom Hersteller mit +/- 0,5 °F/ 0,5 °C angegeben.
Für die Messung benötigen wir keine zusätzlichen Widerstände, wenn es nur um positive Temperaturwerte zwischen +2 °C und +150 °C geht.
Den vollen Messbereich ausschöpfen
Soll der volle Temperaturbereich von -55 °C ... +150 °C ausgeschöpft werden, muss ein Widerstand und eine negative Referenzspannung vorgesehen werden.
Der Widerstandswert R1 errechnet sich nach der Formel
Für eine Referenzspannung VS = -5V ergibt sich ein Widerstandswert R1 von:
R1 = - (-5V) / 50 µA = 5V/ (50 * 10-6 A) = 0,1 * 106 Ohm = 100 kOhm
Die drei Elektroden des LM34 werden mit +5V, GND und A0 auf dem Arduino Board verbunden und los geht's.
In meiner Bastelkiste liegt nur ein LM34 für die Messung in der Einheit Fahrenheit. Wir werden die Temperatur zunächst als codierte Zahl zwischen 0 und 1023 auslesen und später durch Umrechnung in °C im Terminalfenster der Arduino IDE ausgeben.
Schaltskizze und Schaltungsaufbau
Material |
|
Aufgaben |
|
Das Programm Temperaturmessung_LM34_UNO_WiFi_R2.ino
Wofür stehen die Zahlen im Terminal?
Die Zahlenwerte im Terminal liegen zwischen 0 und 1023. Es sind die vom 10-Bit A/D Wandler des Arduino aufgenommenen und codierten Spannungswerte. Eine Binärzahl mit 10 Stellen kann maximal die Zahl 1023 darstellen. Erinner dich an die Übung Spannungsmessung mit einem Analog-Digital-Wandler.
In einem weiteren Schritt werden jetzt die Zahlenwerte in die tatsächlich gemessenen Spannungswerte umgerechnet. Die Ausgangsspannung des LM34 liegt zwischen 0V und +5V. Das heißt, pro Skalenteil entspricht das 5/1024 Volt.
Wird zum Beispiel ein Zahlenwert von 169 im Terminal angezeigt, dann entspricht das einem Spannungswert von
169 * 5/ 1024 = 0,8251…
Aufgaben |
|
Das Programm LM34_2.ino
Dem Datenblatt des LM34 ist zu entnehmen, dass zwischen der Temperatur in Grad Fahrenheit und der Messspannung ein einfacher Zusammenhang besteht: der lineare Skalierungsfaktor liegt bei 10 mV pro ° Fahrenheit oder 0,01V pro ° Fahrenheit. Mit einem klassischen Zwei- oder Dreisatz lässt sich jetzt das Problem lösen.
Wenn das Terminal einen Spannungswert von 0,83 Volt anzeigt, dann entspricht das einer Temperatur in Grad Fahrenheit von:
0,01V entsprechen 1° Fahrenheit
oder, was dasselbe ist:
1V entspricht 100° Fahrenheit
0,83V entspricht dann 100 * 0,83 = 83° Fahrenheit.
Um also auf den Temperaturwert in Fahrenheit zu kommen, muss die Zeile
tempMess = (tempWert * 5.0) / 1024.0
mit 100 multipliziert werden. In der Formel wird die 5.0 durch eine 500.0 (das ist ein Faktor 100) ersetzt und der Ausgabetext angepasst. Das neue Programm (s. Abb. 4) sollte jetzt so aussehen:
Die Umrechnung in das gewohnte Grad Celsius kostet eine weitere Programmzeile, in der die Umrechnungsformel eingefügt wird; sie kann im Internet eingesehen werden. Ergänze das Programm (s. Abb. 5) und starte es erneut, es sollte jetzt die Termperatur in Grad Celsius anzeigen. Am Tag, als ich dies schrieb, waren in meinem Büro tatsächlich 28 °C – im Schatten!!
Programm mit Umrechnung in Grad Celsius