Thermoelement Typ K an Arduino
Um ein paar Typ K Thermoelemente an einen Arduino anzuschließen gibt es mehrere Möglichkeiten.
Ich will damit Temperaturen von 0°C bis zu 1200°C messen. Genauigkeit wäre +-5°C bis 100°C und +-10°C bei 1200 wünschenswert.
Das Grundwissen für Thermoelemente bekommt man hier: Thermoelemente
Die meisten Lösungen hier haben keine Korrektur, das heißt es ist nur auf ein paar Grad genau.
Für hohe Genauigkeit wird entweder eine Lösung mit Korrektur (Linearization) oder eine spätere Korrektur in der Software benötigt.
Der MAX31856 hat diese Korrektur integriert, die Variante damit steht am ende dieses Artikels.
AD595 von Analog Devices
Der AD595 ist eine 1 Chip Lösung, er hat alles integriert! Dafür auch teuer mit gut 15€ pro Chip.
Ein weiterer Nachteil ist das er eine hohe Versorgungsspannung benötigt um große Temperaturen zu messen.
Mit 5V funktioniert er bis ~ 480°C. Erst mit +15V sind 1250°C möglich.
Die Grundschaltung:
MAX31855 von maxim integrated
Der MAX31855 ist ebenfalls eine 1 Chip Lösung. Er gibt direkt digital per SPI -270°C bis +1372°C aus!
Mit ca 5€ pro Chip ist er auch preislich interessant. Die Typ K Variante heißt MAX31855KASA.
Er ist nur 3,3V tauglich, an vielen Arduinos wird ein Pegelwandler benötigt.
Analoge Schaltung mit MCP601/MCP602
Man kann die Auswertung auch Analog ausführen.
In der AN684 von Microchip findet sich folgende Schaltung:
Scheint viel zu sein, man kommt aber zu einem selbst bestimmbaren Ausgang, 1200°C sind damit an 5V möglich!
Analog mit AD8551
Eine noch einfachere Lösung ist mit dem AD8551 möglich:
Die verwendung einer einfachen Diode für die Kompensation und der relativ günstige AD8551 (~4€ pro Chip) machen diese Schaltung interessant.
Wenn R8 durch einen 62kΩ Widerstand ersetzt wird ist die Schaltung bis 1000°C geeignet (5mV/°C anstelle 10mV/°C)
Analog mit AD8494o
Der AD8494 ist ein speziell für Thermocouples gemachter OPV mit integrierter Kompensation, eine 1 Chip Lösung.
Er hat 5mV/°C und ist damit direkt bis 1000°C geeignet bei 5V Betriebsspannung.
Um die vollen 1200°C mit 5V messen zu können benötigt es noch einen Spannungsteiler. Der AD8496 erzeugt bei 1200°C 6V.
Damit wäre ein Spannungsteiler mit 10k und 50k ideal. Es ergibt sich dadurch ein Ausgang mit 4mV/°C
Analog mit LTC1050
Sehr einfach ist eine Schaltung mit dem LTC1050 möglich.
Diese wird näher auf meiner Projektwebsite vorgestellt: https://github.com/designer2k2/multidisplay/wiki/TypKThermocouples
Dort ist auch der benötigte Quellcode sowie ein Schaltungsdesign zu finden. Wenn mit einer Lookup Table gearbeitet werden soll.
Die Schaltung laut Datenblatt:
Analog / Digital Wandler MCP3208
Der MCP3208 ist ein 8 Kanal 12 Bit ADW der über SPI am Arduino angeschlossen wird. Er kostet ~ 6€ pro Chip.
Mit diesem Chip können 8 Thermocouples auf einen Verstärker geschalten werden, zum Beispiel auf den oben gezeigten LTC1050.
Handling mit dem Arduino ist einfach: https://playground.arduino.cc/Code/MCP3208/
Mit 4 Pins am Arduino gewinnt man 8 12Bit Analoge Eingänge, nicht schlecht oder?
Die 6 Analogen Eingänge am Arduino bleiben offen, man kann damit dann insgesamt 14 Thermoelemente einlesen, cool oder?
MAX31856 von Maxim Integrated
Der MAX31856 ist eine 1 Chip Lösung mit Kompensation. Er gibt direkt Digital die Temperatur von -200°C to +1372°C aus.
Durch die Kompensation ist es die Lösung mit der höchsten Genauigkeit.
Comments powered by CComment