Infrarot-Thermometer

Die Temperatur per Infrarot messen mit dem GY-906

Mit den meisten Sensoren kannst du die Temperatur der Umgebung messen – einen Schritt weiter gehst du mit dem GY-906: Dieser Sensor misst per Infrarot die Temperatur eines Objekts aus der Entfernung. Und die Umgebungstemperatur misst er nebenher gleich mit. 🙂

In diesem Tutorial lernst du, wie du den GY-906 anschließt und damit Temperaturen misst.

AngebotBestseller Nr. 2
Makita Werkzeug GmbH E-06270 Bohrer-Bit-Set 212tlg
  • Herkunftsland:- China
  • Verpackungsgewicht: 4.624 Kg
  • Verpackungsabmessungen (L x B x H): 345.0 x 110.0 x 315.0 mm
  • Material: Metall
Bestseller Nr. 3
Vaessen Creative 1119-902 Bastelset für Kinder mit 500 Hochwertigen Bastelmaterialien wie Moosgummi, Wackelaugen, Bastelpapier, Pfeifenputzer, Washi Tape, Strasssteinen und Mehr, Set 2
  • ZAHLREICHE BASTELPROJEKTE – Eine große Vielfalt an Bastelmaterialien in vielen bunten Farben, Texturen und Materialien, für all Ihre Bastelideen. Diese hochwertige Sammlung Bastel- und Spielzeug ist ein ideales Kit für Kinder und kreative Erwachsene
  • BASTELKOFFER FÜR KINDER – Großen Kinder-Kunst-Set, das sich perfekt zum Basteln eignet. Dekorieren Sie Kinderschmuck, Karten, Schultüten, Laternen, Schlüsselanhänger, etc. mit Glitzersteinen, Pom-pons, Bastelpapier-Buchstaben und mehr!
  • KOMPETENZEN AUS DER BASTELBOX – Basteln schafft eine inspirierende Umgebung, in der das kreative Denken gefördert wird. Handwerksaktivitäten, Kunsthandwerk und Selbermachen verbessert die Feinmotorik, gemeinsames Basteln zudem das Sozialverhalten
  • GESCHENKIDEE FÜR KINDER – Überraschen Sie sowohl Mädchen als auch Jungen mit dieser vielseitigen Bastelschachtel als Geburtstagsgeschenk oder als Kinderbeschäftigung für die Geburtstagsfeier
  • BASTELSET – Mit 500 Artikeln! Enthält 8 Schaumstoffblätter (A5), 12 Blatt Glitzerpapier, 24 Pfeifenreiniger, Baumwollschnur, 12 Blatt Papier, 24 Pompons, 12 Papierstrohhalme, 24 Eisstiele, 6 Glitzerbänder, 100 bunte Wackelaugen, 6 Rollen aus Krepppapier, 160 Schaumformen & Alphabet, 110 Strasssteine und 1 Bastelanleitung

So schließt du den Sensor an

Diesen Sensor schließt du im Handumdrehen per I²C an. Das heißt, du benötigst neben Plus und Minus nur zwei weitere Anschlüsse für SDA (Data) and SCL (Clock). Die entsprechenden Pins an deinem Arduino sind A4 für SDA und A5 für SCL. Wenn du mehr über I²C erfahren möchtest, hilft dir Wikipedia weiter.

Verbinde also die Pins VIN und GND am Sensor mit dem 5V und GND am Arduino. Anschließend verbindest du SDA mit A4 und SCL mit dem Pin A5. Das war es auch schon.

Der Code für den GY-906

Für deine ersten Experimente reicht es, wenn du die Temperatur im Seriellen Monitor ausgibst. Wenn dir das zu wenig ist, erfährst du hier, wie du ein TFT-Display am Arduino anschließt.

Bevor du jedoch loslegen kannst, benötigst du noch eine Bibliothek für den GY-906. Wähle hierfür im Menü Werkzeuge ->Bibliotheken verwalten.

Suche dort anschließend nach Adafruit_MLX90614 und installiere die Bibliothek in der aktuellsten Version:

Bibliothek Adafruit_MLX90614

Jetzt kann es losgehen: Binde zunächst zwei Bibliotheken in deinen Sketch ein. Die, die du gerade geladen hast, um die Daten des Sensors zu lesen und eine weitere (Wire.h) für die Kommunikation per I²C.

#include <Adafruit_MLX90614.h>
#include <Wire.h>

Anschließend erstellst du eine Instanz der Bibliothek mit dem Namen mlx:

Adafruit_MLX90614 mlx = Adafruit_MLX90614();

In der Funktion void setup() startest du nur den Seriellen Monitor und die gerade erstellt Instanz der Bibliothek. Mehr brauchst du nicht.

void setup() {
  Serial.begin(9600); 
  mlx.begin();  
}

Nun zum Kern deines Sketches, zur Funktion void loop(). Hier lässt du deinen GY-906 alle 500 Millisekunden eine Messung der Umgebungstemperatur und der Temperatur eines beliebigen Objekts vor dem Sensor ausführen. Die Ergebnisse gibst du dann im Seriellen Monitor aus:

void loop() {
  Serial.print("Umgebung = "); Serial.print(mlx.readAmbientTempC()); 
  Serial.print("*C\tObjekt = "); Serial.print(mlx.readObjectTempC()); Serial.println("*C");

  Serial.println();
  delay(500);
}

Praktischerweise besitzt die Bibliothek Adafruit_MLX90614 hierfür die zwei Funktionen readAmbientTempC() und readObjectTempC(), die du aufrufen und ohne Umwege direkt im Seriellen Monitor ausgeben kannst. Erstere gibt die Umgebungstemperatur aus, letztere die des Objekts direkt vor dem Sensor.

Im Gegensatz zum beliebten Temperatursensor TMP36 musst du hier also keine Umrechnungen von Spannung in Grad Celsius machen.

Hier der gesamte Skecht zum Rauskopieren:

#include <Adafruit_MLX90614.h>
#include <Wire.h>

Adafruit_MLX90614 mlx = Adafruit_MLX90614();

void setup() {
  Serial.begin(9600); 
  mlx.begin();  
}

void loop() {
  Serial.print("Umgebung = "); Serial.print(mlx.readAmbientTempC()); 
  Serial.print("*C\tObjekt = "); Serial.print(mlx.readObjectTempC()); Serial.println("*C");

  Serial.println();
  delay(500);
}

Wie geht es weiter?

Vom Seriellen Monitor bis zum Display ist es natürlich kein weiter Weg – du kannst dir damit und mit einer Batterie leicht ein mobiles Infrarot-Thermometer bauen.

Wenn du es lieber old school hast, ist vielleicht dieses Analog-Thermometer das richtige für dich. In diesem Projekt wird zwar ein TMP36 zum Messen verwendet, aber du kannst ihn nach diesem Tutorial ganz leicht durch den GY-906 ersetzen.

Letzte Aktualisierung am 18.01.2022 / Affiliate Links / Bilder von der Amazon Product Advertising API

Auch interessant

Arduino Analog Thermometer

Arduino Analog-Thermometer

Mit einem einfachen Temperatursensor und einem Servomotor baust du im Handumdrehen ein analoges Thermometer. Die “Nadel” des Servos zeigt dir auf einer Schablone die Temperatur

Read more »
Lerne C++ mit dem Arduino und baue IoT-Projekte mit dem ESP8266.
Arduino & ESP8266 Starter Kit
Lerne C++ mit dem Arduino und baue IoT-Projekte mit dem ESP8266.
Arduino & ESP8266
Starter Kit