Temperatur messen:

mit TC1046 / TC1047


Features:

  • Temperaturmessung
  • nutzt Analog-Eingang
  • Einfach anschließen
  • Einfach zu programmieren

Temperatur messen mit TC1046 und TC1047

Der TC1046

Der TC1046 ist ein winziger Temperatursensor im dreipoligen SOT23B-Gehäuse mit Spannungsausgang, der sehr einfach an einen analogen Eingang des Arduino angeschlossen wird. Die Betriebsspannung ist 3,3 Volt (empfohlen 2,7 bis 4,4 Volt)! 5 Volt zerstört den Sensor zwar (noch) nicht, das geschieht erst bei 7 Volt (absolutes Maximum)! Die empfohlene Betriebsspannung ist also 3,3 Volt.

Die Ausgangsspannung berechnet sich laut Datenblatt mit der Formel Vout = (6.25 mV je Grad Celsius) + 424 mV und ist im bereich von -40 Grad bis +125 Grad Celsius linear. Ein kleiner Sketch sieht so aus:

int sensorPin = A0;
int sensorValue = 0;
float vadc;
float celsius;

void setup() {
  Serial.begin(4800);
}

void loop() {
  sensorValue = analogRead(sensorPin);
  // Spannung = Vcc / 1024 * ADC-Rohwert
  vadc = (3.3 / 1024) * sensorValue;
  // Temperatur TC1046
  celsius = (vadc - 0.424) / 0.00625;
  // anzeigen
  Serial.print(vadc);Serial.print(" ");Serial.println(celsius);
}

.. nun der TC1047

Der TC1047 im selben Gehäuse ist sehr ähnlich dem TC1046, jedoch berechnet sich die Temperatur etwas anders. Es existieren zwei Varianten des Sensors, die unterschiedliche Spannungsfestigkeit aufweisen: TC1047 arbeitet bei 2,7 bis 4,4 Volt, der TC1047A von 2,5 bis 5,5 Volt. Die Ausgangsspannung berechnet sich so: Vout = 10 mV je Grad Celsius + 500 mV. Im Sketch kann man das so formulieren:

// Temperatur berechnen
// --------------------
float Temperatur_berechnen()
{
  // Spannung = Vcc / 1024 * ADC-Rohwert
  float Vadc = ((3.3f / 1024.0) * sensorValue;            // Volt
  float t = (Vadc /0.01) - 50.0;                          // Temperatur in Celsius
  return t;
}

zurück zu Arduino.