Temperaturmessung mit B511,
AD590J
oder AD592A
Temperaturmessung mit einem PTC/NTC
PT100/PT1000
Thermo-Elemente
Die Aufgabe eines PIC besteht oft im Messen, Streuern und Regeln. Eine der wichtigsten Meßgrößen in unserer Umwelt ist die Temperatur. Wie läßt sich die Temperatur mit einem PIC erfassen? Ich unterscheide folgende wesentlicht Möglichkeiten:
Messung mit einem NTC- oder PTC-Widerstand
NTCs und PTCs verringern oder erhöhen ihren Widerstand in
Abhängigkeit
von der Temperatur. Man braucht also zur Temperaturmessung nur den
Wiederstandswert
des NTC/PTC zu messen. Das erfordert aber zumindest einen externen OPV
oder eine externe Konstantstromquelle. Alle anderen Lösungen
erzeugen
Spannungen, die zur Temperatur nicht linear sind. Theoretisch kann der
PIC natürlich die nichtlineare Kennlinier mathematisch
wieder
linearisieren, der dafür nötige Progammier- und
Kalibieraufwand
ist aber nicht gering. Für die Industrie lohnt sich der Aufwand
sicherlich,
der Bastler sollte einfachere Wege suchen.
Meinen Weg habe ich weiter unten beschrieben, und hier
befindet sich ein Thermometer mit PTC am PIC.
Messung mit PT100/PT1000
Der industrielle Standard für genaue Temperaturmessung. Diese
Platintemperatursensoren haben einen definierten
Temperaturkoeffizienten
und weisen hohe Genauigkeit auf.
Messung mit einer temperaturabhängigen
Konstantstromquelle
Als gelernter Ossi kenne ich noch die Temperatursensoren B511 aus
DDR-Produktion.
Das ist eine 2-beinige Konstantstromquelle, deren Strom (in
Mikroampere)
der Temperatur (in Kelvin) entspricht. Das Äquivalent aus
West-Produktion
sind AD590 (ca. 8,85 € bei Reichelt) und AD592 (ca. 5,10 € bei
Reichelt) von Analog Devices. Um mit diesem Sensor eine der Temperatur
proportionale Spannung zu erzeugen benötigt man nur eine
Betriebsspannung
(unstabilisiert, größer 4V) und einen Widerstand. Die
Einfachheit
dieser Schaltung und ihr lineares Temperatur/Spannungsverhältnis
machen
diese Schaltung zu einer meiner Lieblingslösungen. Ein Nachteil
besteht
in der nötigen stabilen Referenzspannung
des ADC.
Messung mit einem Sensorchip mit eigenem ADC
Die Lösung für Warmduscher. Es gibt komplette
Temperatursensoren
mit I2C-Interface zu einem
günstigen
Preis. So kostet der LM75CIM bei Conrad weniger als 4€. Alle
großen
PICs haben ein I2C-Interface, die kleinen können I2C
per Software nachbilden. Der LM75CIM hat allerding einen
Temperaturfehler
von bis zu 2°C.
Problematischer ist die Bauform: Als 'richtiger IC' kommt der LM75
im 8-poligen SMD-Gehäuse (SOT) daher und benötigt
wenigstens
4 Anschlußleitungen (Vs, Gnd, SDA, SCL). Die Montage im
thermischen
Kontakt zu anderen Bauelementen ist kaum vernünftig zu lösen.
Außerdem reagiert der Sensor durch seine vergleichsweise
große
Masse träge auf Temperaturänderungen.
Geeignet ist der LM75 um auf Platinen (z.B. Computermainbords)
die Umgebungstemperatur zu messen. Ein
Thermometer mit LM75 am PIC befindet sich hier.
Ein ähnlicher Chip ist der DS1820 (meistens im TO92 Gehäuse,
Reichelt: 3,10 Euro). Er hat einen 1-wire-Bus und liefert die
Temperatur als 9-Bit Datenwort mit 0,5 K Auflösung. Im Bereich von
–10°C to +85°C soll das auch seiner Messgenauigkeit entsprechen.
Messung mit einem Sensorchip mit Spannungsausgang
Am Markt sind kalibrierte Temperatursensoren mit Spannungsausgang
erhältlich.
Zum Beispel der Sensor LM50 von National Semiconductor. Dieser
Sensor
benötigt eine 5V-Versorgungsspannung, und liefert eine
temperaturabhängige
Ausgangsspannung mit einem TK von 10 mV/K und einem Offset von 500mV
(bezogen
auf °C). Die Spannung ist also linear zur Temperatur, und damit
recht
einfach auswertbar. Der Nachteil besteht in der nötigen stabilen Referenzspannung
des ADC.
Messung über den WDT
Diese Lösung ist eher ein Kuriosum. Microchip beschreibt sie in
der Application Note AN828. Dabei wird die Temperaturabhängigkeit
des WDT
(Watchdog-Timer)
im PIC ausgenutzt..Der Vorteil dieser Methode ist der Verzicht auf
jegliche
externe Bauteile. Allerdings darf der PIC praktisch keine
Eigenerwärmung
aufweisen. Er muß also langsam getaktet werden, und darf keine
nennenswerten
Lasten treiben. Die erreichbare Genauigkeit beträgt ca. 1°.
Als
Referenz-Taktquelle benötigt der PIC einen Quarz oder
Quarzgenerator.
Natürlich eignet sich diese Methode nur zur trägen Messung
der Umgebungstemperatur, und nicht zur thermischen Überwachung
einzelner
Leistungsbauteile.
Temperaturmessung mit B511, AD590J oder AD592A
Diese Schaltkreise besitzen eine lineare Temperatur/Strom-Kennlinie, und ermöglichen damit den einfachen Aufbau präziser Temperaturmeßschaltung. Da es sich bei den Sensoren um Stromquellen handelt, hat die Länge und Qualität der Anschlußleitung zum Schaltkreis keinen Einfluß auf die Meßgenauigkeit. Man kann mit diesen Sensoren also recht einfach die Temperatur über größere Entfernungen messen. Positiv ist auch, dass keine hohen Ansprüche an die Stabilität der Sensor-Speisespannung gestellt werden. Prinzipiell verbessert eine hohe Spannung zwar die Meßgenauigkeit, aber eine Stabilisierung ist nicht nötig. Wichtig ist, dass über dem Sensor immer mindestens 4 V anliegen.
Ich beschränke mich bei den einzusetzenden Typen auf die breit verfügbaren Schaltkreise.
| Typ | Temperaturkoeffizient | Betriebsspannung | Temperaturbereich | Grundfehler [K oder µA] | Meßfehler |
| B511N4 | 0,8 ... 1,2 µA/K | 4 ... 40 V | - 55 ... +125 °C | -28,2 ... +60,8 | - |
| B511Nm | 0,8 ... 1,2 µA/K | 4 ... 40 V | - 55 ... +125 °C | 3 | - |
| AD590J | 1 µA/K | 4 ... 30 V | - 55 ... + 150 °C | 5 | 3 K |
| AD592A | 1 µA/K | 4 ... 30 V | - 25 ... + 105 °C | 2,5 | 3,5 K |
RFT und AD geben die Daten in einer anderen Art und Weise an, deshalb sind die Daten nur begrenzt vergleichbar.
![]() |
Bei diesen Sensoren handelt es sich um
hochohmige Konstantstromquellen.
Sie liefern einen Strom, dessen Stärke (in Mikroampere) der
absoluten
Temperatur (gemessen in Kelvin) entspricht. Bei 25°C
Zimmertemperatur
(ich mag es warm) sollten sie also 298,2 µA liefern. Dieser Strom
sollte dann mit jedem Grad Temeraturänderung um jeweils 1 µA
steigen bzw. sinken.
Mit nebenstehender Schaltung läßt sich eine
Spannung erzeugen,
die proportional der Temperatur ist. Wird die Spannung mit einem ADC gemessen, muß man sie noch mit 100 multiplizieren und dann 273 subtrahieren. Dann erhält man die Temperatur in °C. Später werden wir sehen, das die Multiplikation kein nennenswertes Problem darstellt. |
Das ist die Theorie, aber in der Praxis sieht es etwas anders aus. Der Strom weicht bei 25°C bei jedem Schaltkreisexemplar um einige µA (beim B511N4 sogar um einige dutzend µA) ab. Diese Abweichung ist der Nullpunktfehler des Schaltkreises. Das stört nicht, da man bei der Umrechnung von Kelvin in Celsius sowieso einen festen Zahlenwert vom Kelvinergebnnis subtrahieren muß (normalerweise 273,2) kann man auch erwas mehr oder weniger subtrahieren, um den Nullpunktfehler dabei zu eliminieren. Allerdings ist es nötig, den Fehler für den eingesetzten Schaltkreis einmal auszumessen.
Der Temperaturkoeffizient des Schaltkreises beträgt
idealerweise
1µA/K. Das heißt, dass sich der Strom bei der Änderung
der Temperatur um 1 Grad auch um 1 µA ändert.Bei den
Schaltkreisen
von AD wird dieser Wert sehr genau eingehalten, da jeder Chip
individuell
mit Laser justiert wird. Der erreichte Temperaturkoeffizient kann noch
etwa um 0,03µA/K abweichen. Daraus ergeben sich aber an den Enden
des Meßbereichs Fehler von ca 3°. Die RFT-Schaltkreise sind
nicht
justiert, deshalb streut ihr Temperaturkoeffizient stärker. Wie
wir
sehen werden stört aber auch das nicht sehr.
![]() |
Der ADC des PIC arbeitet mit einer Genauigkeit
von 10 Bit.
Die Spannung 5 V wird also in die Zahl 1023 gewandelt. Wird der
Meßwiderstand
so bemessen, das bei 500 µA nur 4,89 V über ihn abfallen, so
würden 500 µA genau in die Zahl 1000 gewandelt werden. In
einer
solchen Schaltung entspricht das Meßergebnis des ADC genau der
doppelten
Temperatur (in Kelvin). Der dafür nötige Widerstand
beträgt
9,775 k. In der nebenstehenden Schaltung ist er aus einem 9,1 k
Festwiderstand
und einem 1 kOhm Einstellregler zusammengesetzt.
Weicht der Temperaturkoeffizient des Sensors vom Idealwert 1µA/K ab, dann muß auch der Widerstand anders gewählt werden. Für die AD-Schaltkreise sind Werte zwischen 9,1 k und 10,1 k ausreichend, für die B511 sollte man mit 7,5 k und 12,2 k immer hinkommen. Nebenstehende Schaltung ist für den AD-Typ entsprechend ausgelegt. Der ADC des PIC liefert nun also als Meßergebnis die doppelte Temperatur (in Kelvin) die man nur noch durch 2 teilen muß und von der man dann nur noch den Meßwert bei 0°C (also etwa 273) subrahiert, um die reale Temperatur in Celsius zu erhalten. |
![]() |
Lästig ist die für den Sensor
nötige hohe
Betriebsspannung. Da über dem Sensor immer mindestens 4V liegen
müssen,
und über dem Widerstand bis zu 4 V abfallen, muß der
Sensor
also wenigstens 8..9 V am positiven Pol bekommen. Will man mit der
5-V-Betriebsspannung
des PIC auskommen, so bleibt nur der Weg über einen kleineren
Meßwiderstand.
Wird der Widerstand mit nur 1,955 kOhm bemessen, so ist der
Spannungsabfall
am Widerstand immer deutlich kleiner als 1V dadurch bekommt der Sensor
immer mehr als 4 V, auch wenn er nur mit 5 V gespeist wird.
Leider ändert sich nun die Meßspannung nur noch mit 2mV/K, wärend der ADC eine Auflösung von nur 5mV/Bit hat. Es kann die Temperatur also nur noch mit 2,5° Genauigkeit gemessen werden. Wer keinen OPV zur Verstärkung einsetzen will, der kann nun nur noch die Referenzsspannung des ADC auf 2V absenken. Dann beträgt die Genauigkeit wieder 1°. Die Betriebsspannung
muß im Übrigen hochgenau stabilisiert werden (0,05%), da
sie in jedem Fall für die Referenzspannung des ADC benutzt wird. Hinweis: |
Temperaturmessung mit einem PTC/NTC
PTC und NTC sind Widerstände mit positivem bzw. negativem Temperaturkoeffizient. D.h., dass sie bei steigender Temperatur ihren Innenwiderstand erhöhen (PTC) oder vermindern (NTC). Aus diesem Grunde werden sie meist auch Kaltleiter (PTC) bzw Heißleiter (NTC) genannt.
Typisch für diese Familie sind PTCs aus Silizium, die für
ca. 1€ zu haben sind.
Solche PTC haben meist bei Zimmertemperatur (25°C) einen
Grundwiderstand
von 1kOhm oder 2kOhm. Bei Temperaturänderung verändert der
sich
mit etwa 0,7%/K (hängt vom Typ ab). Das bedeutet, das die
Änderung
bei hohen Temperaturen stärker ist als bei niedrigen Temperaturen.
Dieses unlineare Verhalten macht es schwierig, die PTCs für eine
Temperaturmessung
über weite Temperaturbereiche zu verwenden. In einem Bereich von
wenigen
10 Grad kann man mit der Unliniearität aber leben.
Auf einen typischen Vertreter dieser Gattung beziehe ich mich im
weiteren
Text: den KTY81.
Dessen Widerstand errechnet man mit folgender Formel: Rkty
= R25 * (1 + (dT * a) + (dT2 * b))
Dabei gilt:
Nachfolgende Tabelle zeigt den Widerstandsverlauf des PTC-Sensors
KTY81-110,
der für weniger ale 1€ z.B. bei Reichelt erhältlich
ist.
| Temperatur [°C] | -20 | 0 | 20 | 40 | 60 | 80 | 100 |
| Widerstand [Ohm] | 684 | 815 | 961 | 1122 | 1299 | 1490 | 1696 |
| Toleranz [Ohm] und [°] | 15 = 2,4° | 13 = 1,9° | 11 = 1,4° | 14 = 1,7° | 20 = 2,1° | 28 = 2,8° | 37 = 3,5° |
| Temperaturkoeffizient [%/K] | 0,91 | 0,85 | 0,80 | 0,75 | 0,71 | 0,67 | 0,63 |
Die Meßgenauigkeit ist mit der des AD592 vergleichbar, wenn nur nicht der unlineare Temperatur/Widerstandsverlauf wäre. Um den Rechenaufwand in einem Thermometer gering zu halten, muss man versuchen, annähernd lineare Verhältnisse zu schaffen.
![]() |
Speist man einen PTC mit einer Konstantstromquelle (1mA) und misst die über dem PTC abfallende Spannung, dann erhält man eine dem Widerstand proportionale Spannung. Der Widerstand ändert sich aber leider bei hohen Temperature stärker als bei niedrigen Temperaturen, da der Temperaturkoeffizient des PTC temperaturabhängig ist. |
![]() |
Dem lässt sich entgegenwirken, wenn
man keine
Konstantstromquelle verwendet, sondern den PTC durch einen einfachen
2,7kOhm-Widerstand
(Metallschicht , TK=25) aus der 5V-Betriebsspannung speist. Der Strom
durch
die in Reihe geschalteten Widerstände ist nun vom Widerstand des
PTC
und damit von der Temperatur abhängig. Bei hohen Temperaturen ist
der Strom etwas kleiner, und der Spannungsabfall über dem PTC ist
dadurch etwas geringer als bei Konstantstrom.
Das gleicht die Unlinearität fast genau aus. Im Bereich von -40°C ... +140°C scheint der Sensor nun linear zu sein. Der verbleibende Linearitäts-Restfehler liegt bei ±10 mV, also etwa ± 1,25°. Unterhalb 50°C ist die ausgegebene Spannung etwas zu klein, oberhalb aber etwas zu groß. |
![]() |
Die nebenstehende Grafik zeigt die Spannung an einem KTY-81
im
Temperaturbereich
von -40°C bis zu +140°C. Die violette Linie ergibt sich
bei
Speisung mit einem konstanten Strom von 1,4 mA. Die dunkelblaue Linie
ergibt
sich bei einer Speisung aus einer 5V-Quelle über einen
Reihenwiderstand
von 2,7 kOhm. Die dramatische Verbesserung der Kennlinie ist schon mit
bloßem Auge zu erkennen.
Derr KTY ist für einen Strom von 1mA ausgelegt. Niedrigere Ströme sind wohl unkritisch, aber höhere Ströme können zu stärkerer Eigenerwärmung führen. Mit dem 2,7kOhm-Widerstand an 5V erzeugt der KTY-81 bis zu 2mW Wärme (anstelle der normalen 1mW). Daß lässt eine Eigenerwärmung um zusätzlich 1° erwarten.Dieser Effekt ist temperaturabhängig, und macht sich erst oberhalb von 50°C bemerkbar. Wenn man den Sensor nur während der Messung mit Strom versorgt, lässt sich die Eigenerwärmung gänzlich vermeiden. |
![]() |
Noch bessere Genauigkeiten lassen sich
erreichen, wenn
man sich mit einem schmaleren Temperaturbereich begnügt. Mit einem
Reihenwiderstand von 2,7kOhm beträgt der Linearitätsfehler im
Bereich von -5°C bis +50°C maximal 0,04°. Dieser Fehler ist unbedeutend, da die Toleranz des KTY81 und die Auflösung des ADC um Größenordnungen schlechter sind. Ich betone, dass damit lediglich die Messspannung linearisiert wurde. Natürlich muss die Messschaltung noch kalibriert werden, da auf allen Messwerten ein konstanter Messfehler von einigen wenigen Grad liegen kann, der bauteilspezifisch ist, und ausgemessen werden muss. |
![]() |
Die vom der Schaltung abgegebene
Meßspannung liegt
zwischen 1,01V (bei -20°C), 1,47V (bei +40°C) und 1,93
V(100°C)
und verändert sich um etwa 7,7125mV/K. Der ADC des PIC mit 5mV
Auflösung
kann die Temperatur gerade noch mit 1°C Genauigkeit wandeln. Da
bleibt
keine Reserve mehr. Es bietet sich aber an, die untere und obere
Referenzspannung
des ADC mit Hilfe von Potentiometern festzulegen. Geeignet wären
1V
und 2,974V als Referenzspannungen. Der ADC hätte dann eine
Auflösung
von 1,93 mV, was 0,25° entspricht. Hinweis: Je nach PIC-Typ wird Vref+ mit 10uA bis 50uA belastet. Das führt zu einer Verringerung des Vref+-Wertes während der Messung. Der Vref+-Spannungsteiler sollte deswegen möglichst niederohmig ausgelegt werden. |
Diese Platinsensoren sind der heilige Grahl der
Temperaturmesstechnik.
Ein Grund dafür ist ihre Austauschbarkeit. Alle PT100-Sensoren
haben 100 Ohm
Innenwiderstand und alle PT1000-Sensoren logischerweise 1000 Ohm. Diese
Werte gelten bei 0°C. Der Temperaturkoeffizient der Sensoren ist
einheitlich
3850 ppm/K (nach DIN). Das heißt der Innenwiderstand des Sensors
ändert sich bei 1 Grad Temperaturänderung um 0,385%.
PT100/1000-Sensoren gibt es in verschiedensten Bauformen für die
verschiedensten Einsatzbereiche. An ein z.B. für PT100 ausgelegtes
Messgerät lässt sich jeder PT100-Sensor betreiben.
Auch zeichnen sich die Sensoren durch eine gute Langzeitstabilität
aus. Beides ist für die Industrie ein großer Vorteil.
Für
den Hobbybastler zählen aber eher die Nachteile:
Den Widerstand errechnet man (für positive Temperaturen) mit
folgender
Formel: Rpt = R0
* (1
+ (dT * a) + (dT2 * b) + (dT3 * c))
Dabei gilt:
Platinsensoren sind also viel linearer als z.B. ein einfacher KTY81, aber ihr Widerstand ändert sich nur etwa halb so stark mit der Temperatur, da ihr a-Wert kleiner ist.
Berühren sich zwei unterschiedliche
Metalle, dann entsteht an der Berührungsstelle eine kleine
Spannung, deren Größe temperaturabhängig ist - die
Thermospannung. Deren Größe hängt außer von der
Temperatur natürlich auch von den beiden Metallsorten ab. Diesen
Effekt benutzt man, um Thermo-Elemente herzustellen. Je nach
Metallkombination gibt es unterschiedliche Thermoelement-Typen. Ein
typischer Vertreter ist der Typ K, der aus einem Nickel/Chrom-Draht und
einem
Nickel/Aluminium-Draht besteht, die kalt-verschweisst wurden.
So ein
Thermo-Element vom Typ K liefert etwa 4mV/100K - also so gut wie gar
nichts.
Thermoelemente eignen sich also nicht zur Stromversorgung (abgesehen von speziellen Anwendungen), aber sie können als Temperatursensoren verwendet werden. Dem Nachteil der sehr kleinen Thermospannung steht der Vorteil einer hohen Temperaturbeständigkeit gegenüber. Thermoelementen können durchaus bei Temperaturen bis zu 1000 °C eingesetzt werden.
Ein Thermoelement besteht also eigentlich
nur aus zwei Drähten, die auch die Anschlussdrähte sind.
Dort, wo man diese Drähte mit der Messschaltung verbindet,
entstehen natürlich auch Thermospannungen. Da die Drähte oft
nicht lötbar sind, und man sie in Schraubklemmen einsetzt, die auf
Platinen gelötet sind, auf denen sich auch die Messschaltung
befindet ...... gibt es sogar eine ganze Reihe von
Metall-Metall-Übergängen, die alle jeweils eine kleine
zusätzliche Thermospannung erzeugen.
In einem geschlossenen Stromkreis ergibt die Summe aller Thermospannungen "0", wenn alle Metall-Metall-Übergänge die gleiche Temperatur haben. All die zusätzlichen Thermospannungen im Stromkreis kompensieren sich also, wenn sie alle die gleiche Temperatur haben. Nur das eigentliche Thermoelement sollte sich also am Messpunkt befinden, während der Rest der Messschaltung auf kleinstem Raum konzentriert und vom Messpunkt entfernt aufgebaut werden sollte. Die beiden Metalle, die das Thermoelement bilden, sind also auch die Anschlussleitungen, und enden erst an der Messschaltung.

Die vom Thermoelement in so
einem Stromkreis erzeugte Spannung ist zu der Temperaturdifferenz
zwischen dem Thermoelement (Verbindungspunkt der beiden
Drähte, T1) und dem Rest der Messschaltung (andere Enden der
beiden
Drähte, T2) proportional.
Es muss also (mit einem anderen Temperatursensor) die Temperatur der
Messschaltung (T2) bestimmt werden, um die Temperatur des
Thermoelementes zu
ermitteln.
Um die kleine Thermospannung zu messen,
ist auf jeden Fall eine Verstärkerschaltung nötig. Es gibt
integrierte Schaltkreise, die Messverstärker, ADC und digitales
Interface in einem Chip zusammenfassen (z.B. MAX6675). Sie eignen sich
besonders gut, um ein Thermoelement an einen Microcontroller
anzuschließen.
Für den Bastler ist ein PTC wie der KTY-81 in Reihenschaltung mit einem Widerstand die einfachste Lösung, wenn man einen ADC verwenden kann, und bereit ist, die Schaltung an einem Punkt zu kalibrieren. Ein Beispiel findet sich hier.
Wer die Kalibrierung vermeiden will, und lieber mit dem I2C-Bus als mit einem ADC arbeitet, der kann den LM75 nutzen. Ein Beispiel findet sich hier.
Lineare Termperatursensoren gefallen nur auf den ersten Blick. Bei
näherem
Hinschauen sind die zu teuer, und erfordern einen ADC mit
Referenzspannungsquelle.
Für sehr hohe Temperaturen (> 150°C) können Thermoelemente eingesetzt werden. Sie erfordern aber spezielle Messverstärker.
Autor: sprut
erstellt: 28.12.2002
letzte Änderung: 22.01.2009