
Bisher kennst du den Variablentyp int. Am Beispiel der Temperaturmessung lernst du den Datentyp float kennen. Im Gegensatz zu int kann float auch Kommazahlen speichern. Du musst aber beachten, dass der Punkt das Dezimaltrennzeichen ist.
Benötigte Bauteile:
- Temperatursensor TMP36
- Leitungsdrähte
Baue die Schaltung auf.
(Fahre mit der Maus über das Bild, um die Bezeichnungen der Bauteile zu sehen)
So sieht es beim Nähern einer Wärmequelle aus:

Im Kopf des Programms und im setup-Teil sind nur wenige Angaben notwendig:
int TEMPERATURSENSOR = A0;
void setup()
{
Serial.begin(9600);
Serial.println("Temperatur messen:");
}
Für diese Aufgabe wird ein wenig Mathematik benötigt.
Laut Datenblatt müssen für die Berechnung der Temperatur verschiedene Besonderheiten berücksichtigt werden:

- der analoge Eingang hat einen maximalen Wert von 1023 mV
- der Arduino wird mit einer Spannung von 5 V = 5000 mV betrieben
- vom gemessenen Wert müssen 0,5 V abgezogen werden
- ein Grad Celsius entspricht 10 mV = 0,01 V
Jetzt zur Rechnung im loop-Teil:
void loop()
{
// Wert des Sensors lesen
float SensorWert = analogRead(TEMPERATURSENSOR);
// richtiges Verhältnis zwischen 5 V = 5000 mV und 1023 mV herstellen
// → gemessenen Wert mit 5 malnehmen und dann durch 1023 teilen
float MesswertVolt = SensorWert * 5.0;
MesswertVolt = MesswertVolt / 1023.0;
/*
1 Grad = 10mV = 0,01 V = 1/100 V
Versatz von 500mV = 0,5 V abziehen
und durch 0.01 = 1 Grad teilen
*/
float Temperatur = (MesswertVolt - 0.5) / 0.01 ;
// Ausgabe im Seriellen Monitor
Serial.print("Temperatur: ");
Serial.print(Temperatur);
Serial.println(" °C");
// Wartezeit bis zur nächsten Messung
delay(3000);
}
Leider wird das Ergebnis mit einem Punkt als Dezimaltrennzeichen angezeigt. Mit dem Befehl replace kannst du das Problem lösen:
// in Strings umwandeln, . durch , ersetzen
String AnzeigeTemperatur = String(Temperatur);
AnzeigeTemperatur.replace(".", ",");

Neben dem TMP36 kann auch der DHT22 die Temperatur messen. Hier ein Vergleich der gemessenen Temperaturen über einen Zeitraum von drei Minuten.
Das dazugehörige ➨Programm.
Verwandte Aufgaben:
- BMP280 - Klimaanlage mit Zeitmessung
- DHT22 - Klimaanlage
- DHT22 - Wetterdaten aufzeichnen
- DHT22 - Wetterdaten mit Bluetooth übermitteln
- DHT22 - Wetterstation Anzeige im Internetbrowser
- DHT22 - Wetterstation Anzeige auf einem LCD
- BMP280 - Temperatur und Luftdruck messen
Letzte Aktualisierung: