Arduino Lektion #102: IR Thermometer MLX90614

In diesem Beitrag zeige ich dir, wie du den Infrarot Thermometer Sensor MLX90614 am Arduino UNO betreibst.

Infrarot Thermometer MLX90614
Infrarot Thermometer MLX90614

Bezug

Das Infrarot Thermometer Sensor Modul habe ich über ebay.de für knapp 3,6€ inkl. Versandkosten erstanden. Das Modul findest du alternativ auch auf amazon.de doch dort für mehr als ein vielfaches des Preises.

Technische Daten des Sensors MLX90614

  • Betriebsspannung 3V bis 5V
  •  Messbereich
    • Umgebungstemperatur -40°C bis +125°C*
    • Objekttemperatur -70°C bis 380°C* 
  • Auflösung 0,02°C

* beste Erkennung / Messung zwischen 0°C und 50°C

Aufbau & Schaltung

Das Infrarot Thermometer verfügt über 4 Pins welche mit VIN, GND, SCL und SDA beschriftet sind. Somit wird das Modul wiefolgt am Arduino UNO angeschlossen:

IR Thermometer MLX90614 Arduino UNO
VIN 5V
GND GND
SCL analoger Pin A5
SDA analoger Pin A4

Arduino UNO SCL & SDA Pins

Arduino UNO SCL & SDA Pins

Solltest du das Modul an einen Arduino Leonardo anschließen wollen so kannst du über die gesondert abgeführten Pins zurückgreifen.

Quellcode – einfaches auslesen der Messdaten

Der Sensor wird einfach über SCL & SDA am Microcontroller angeschlossen und genauso einfach wird dieser auch Programmiert. Es wird lediglich eine passende Bibliothek benötigt. Ich verwende die Bibliothek von Adafruit, diese kannst du dir über den Bibliotheksverwalter installieren.

Adafruit Bibliothek für das IR Thermometer MLX90614
Adafruit Bibliothek für das IR Thermometer MLX90614

Wie bei den Bibliotheken von Adafruit üblich, liegt auch dieser ein Beispiel bei wie man diese verwendet.

Beim nachfolgenden Quellcode habe ich mich vom Beispiel der Adafruit Bibliothek „inspirieren lassen“ 🙂 .

#include <Wire.h>
//Bibliothek zum betrieb des IR Thermometers MLX90614
#include <Adafruit_MLX90614.h>

//Instanz eines Objektes erzeugen
Adafruit_MLX90614 mlx = Adafruit_MLX90614();

void setup() {
  //beginn der seriellen Kommunikation mit 9600 baud
  Serial.begin(9600);
  //beginn der Kommunikation mit dem IR Thermometer
  mlx.begin();
}

void loop() {
  //Ausgeben der Umgebungstemperatur in Grad Celsius
  Serial.print("Umgebungstemperatur = "); 
  Serial.print(mlx.readAmbientTempC());
  Serial.print("°C"); 
  Serial.print("\t\t"); 

  //Ausgeben der Tmeperatur eines Objektes in Grad Celsius
  Serial.print("Temperatur des Objektes = "); 
  Serial.print(mlx.readObjectTempC()); 
  Serial.println("°C");
  delay(750); //eine kleine Pause von 750ms
}

Video

IR Thermometer MLX90614 am Arduino UNO
Dieses Video ansehen auf YouTube.

Was man im Video sehr gut sehen kann ist dass, die Messwerte je nach Abstand doch sehr weit auseinander gehen. Ich habe hier einmal zwei extreme gewählt, einmal einen Eiswürfel und eine Kerze. 

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.