Unterrichts- und Lernmaterial für Mikrocontroller
Unterrichts- und Lernmaterial fürMikrocontroller

Analog-Digital-Wandler

Weitere Vorschläge zu diesem Thema mit den Boards: Prop-BoE - Prop-AB - BASIC Stamp - Raspberry Pi

1 - Temperaturen messen mit einem LM34

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.

Abb. 1 - Ausschöpfung des vollen Temperaturbereichs eines LM34 mit Hilfe von R1

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

Abbildung 1 - LM34 Temperaturfühler
Material
  • 1x Arduino UNO
  • 1x  LM34 + Datenblatt
  • 3x  Steckdraht
Aufgaben
  • Baue die Schaltung nach Abbildung 1 auf. Achte unbedingt auf die richtige Polung des LM34.
  • Übertrage das Programm Temperaturmessung_LM34_UNO_WiFi_R2.ino in den Editor und speichere es ab.
  • Starte das Programm.

Das Programm Temperaturmessung_LM34_UNO_WiFi_R2.ino

Abb. 2 - Programm Temperaturmessung_LM34_UNO_WiFi_Rev2_v1.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
  • Ergänze bzw. verändere das Programm so, wie im Programm Temperaturmessung2_LM34_UNO_WiFi_R2.ino dargestellt (s. Abb. 3) und speichere es ab.
  • Starte das Programm erneut.

Das Programm LM34_2.ino

Abb. 3 - Programm Temperaturmessung2_LM34_UNO_WiFi_Rev2_v1.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:

Abb. 4 - Programm Temperaturmessung3_LM34_UNO_WiFi_Rev2_v1.ino

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

Abb. 5 - Programm mit Temperaturanzeige in °C
Druckversion | Sitemap
© Reinhard Rahner - Gettorf