Hohe Temperaturen bis 1000°C mit dem MAX6675 und einem Thermoelement vom Typ-K mit dem Arduino messen
Thermoelemente werden schon seit langer Zeit eingesetzt um Temperaturen genau zu messen. Sie besitzen einen großen Messbereich und sind sehr robust. Problematisch bei dem Betrieb eines Thermoelements ist Kaltstellenkompensation (engl. cold junction compensation; CJC) und die Messung sehr kleiner Spannungen.
Genau diese Aufgaben übernimmt der von Maxim Integrated entwickelte IC MAX6675. Der Chip misst den Ausgang eines Thermoelements vom Typ-K und stellt diesen über SPI für beispielsweise einen Arduino UNO bereit.
Spezifikationen des MAX6675:
Versorgungsspannung | 3,3 bis 5 V DC |
Stromaufnahme | ca. 50mA |
Messbereich | 0 bis 1024° C (32° F bis 1875° F) |
Messauflösung | +/- 0.25° C (+/- 0.45° F) |
Ausgang | SPI-Bus |
SENSOR-Anschluss | K-Thermoelement |
Anschlüsse des MAX6675-Moduls:
– (Minus) | Minus des K-Thermoelements |
+ (Plus) | Plus des K-Thermoelements |
GND | Ground / Masse |
VCC | 3,3 bis 5 V DC |
SCK | Serial Clock (Serieller Tackt) |
CS | Chip Select (Chipauswahl) |
SO | Serial Output (Serieller Ausgang) |
Die MAX6675 Arduino Bibliothek installieren
Die für den MAX6675 benötigte Bibliothek lässt sich einfach über den in der Arduino-IDE integrierten “Library-Manager” installieren. (Sketch -> Include Library -> Manage Libraries…). Dann in dem Suchfeld nach “MAC6675” suchen.
Alternativ kann die Bibliothek auch manuell von GitHub installiert werden. MAX6675-Bibliothek
Die Anleitung zur Installation von Bibliotheken ist hier hinterlegt.
Anschluss des Arduinos mit dem Thermoelement-Modul
Beispielcode zum Betrieb auf dem Aurduino und der Ausgabe im seriellen Monitor
// Beispiel Arduino MAX6675 Sketch #include "max6675.h" int ktcSO = 5; int ktcCS = 6; int ktcCLK = 7; MAX6675 ktc(ktcCLK, ktcCS, ktcSO); void setup() { Serial.begin(9600); delay(500); // Zeit für den MAX6675 } void loop() { // Einfache Ausgabe auf der seriellen Schnittstelle Serial.print("Temperatur in C = "); Serial.print(ktc.readCelsius()); Serial.print("\t Temperatur in F = "); Serial.println(ktc.readFahrenheit()); delay(500); }
Ausgabe im seriellen Monitor der Arduino IDE
Dokumente:
Datenblatt des MAX6675
Noch keine Kommentare.